Как редактировать текстовые файлы в командной строке Windows?

В Unix я бы просто использовал vi, но я не знаю, что это за команда в Windows. На самом деле я пытаюсь редактировать файлы через SSH с помощью Windows Server 2008.


edit filename

Я не ручаюсь за его функциональность и устаревший графический интерфейс, но он установлен по умолчанию даже в Windows 7.

Изменить: За исключением 64-битных версий Windows.


84

Самое простое решение для всех версий Windows:

  C: > notepad somefile.txt  

И никакого дополнительного программного обеспечения не требуется.

Улучшить этот ответ
отредактировал 7 сентября ’18 в 16:51
Питер Мортенсен
11.3k2222 золотых знака6464 серебряных знака8686 бронзовых знаков
ответил 10 сен. 58
  • 45
    Красиво, но не через SSH — Casebash Sep 10 ’10 в 4:10
  • 4
    Ах. Правильно. В Windows нет встроенного редактора командной строки. Возможно, вам потребуется установить версию Gnu редактора, который вы хотите использовать. Поскольку вы уже установили сервер ssh , это не должно быть проблемой для вас. — BillP3rd, 10 сентября 2010 г., 16:27
  • 11
    Как сказал OP … «Я на самом деле пытаюсь редактировать файлы через ssh …» — daviewales 13 апр. ’14 в 3:16
  • 12
    бесполезный ответ, как для пользователей ssh, так и для тех, кто хочет редактировать файлы В окне cmd, а не за его пределами — vladkras 14 фев 2016 в 07:10
  • 5
    Это не будет работать в контейнере Docker, основанном на ‘windowsservercore’ — Питер Мортенсен 28 августа ’18 в 9 : 17
| показать 4 дополнительных комментария

Самое простое решение для всех версий в Windows:

  C: > notepad somefile.txt  

И никакого дополнительного программного обеспечения не требуется.


53

В командной строке Windows введите copy con , за которым следует имя целевого файла. ( copy con c: file.txt ).

Затем введите текст, который вы хотите поместить в файл.

Завершите и сохраните файл, нажав CTRL Z , затем Enter или F6 , затем Enter .

Если вы хотите изменить текст в существующем файле, просто отобразите текст с помощью команды type , за которым следует имя файла, а затем просто скопируйте и вставьте текст в команду copy con .

Улучшить этот ответ
отредактировал 28 августа 2018 в 9:31
Peter Mortensen
11.3k2222 золотых знака6464 серебряных знака8686 бронзовых знаков
ответил 03 декабря 2013 в 18:15
  • 12
    Жесткое ядро. Постарайтесь не делать опечаток, иначе вам придется начинать заново. Что ж, backspace действительно работает, если вы поймаете ошибку до того, как нажмете Enter. — Кевин Панко 03 дек. ’13 в 18:57
  • Кажется, не работает с psexec. Пытался отредактировать файл моих хостов с помощью copy con hosts , но ^ Z не сохраняет и ^ C не отменяет! Пришлось закрыть окно cmd, чтобы выйти. Файл остался без изменений. — Иэн Сэмюэл Маклин, старейшина, 27 мая 2014, 11:17
  • Примечание. F6 можно использовать вместо [Ctrl] — [Z] — MonoThreaded 13 сен 2014 в 09:58
  • 2
    В контейнере Docker на основе ‘windowsservercore’ (CMD) , Ctrl + C работал для завершающей последовательности клавиш. — Питер Мортенсен, 28 августа ’18 в 9:30
добавить комментарий |

В командной строке Windows введите copy con , а затем имя целевого файла. ( copy con c: file.txt ).

Затем введите текст, который вы хотите поместить в файл.

Завершите и сохраните файл, нажав CTRL Z , затем Enter или F6 затем Enter .

Если вы хотите изменить текст в существующем файле, просто отобразите текст с помощью команды type , за которой следует по имени файла, а затем просто скопируйте и вставьте текст в команду copy con .


22

Если вы привыкли к vi и не хотите довольствоваться встроенным редактором, вы можете получить Vim для Windows . Он будет запускаться из командной оболочки. Или попробуйте WinVi.

Улучшите этот ответ
отредактировано 15 сен ’18 в 23:34
Peter Mortensen
11.3k2222 золотых знака6464 серебряных знака8686 бронзовых знаков
ответил 10 сентября ’10 в 3:54
  • 2
    это должно быть отмечено как ответ, потому что edit был удалено из победы 10 — Люк, 14 июня ’18 в 18:36
  • 4
    Это намного лучше: он также работает внутри контейнера Windows Docker (проще всего получить «исполняемый файл консоли Win32», например vim81w32.zip — разархивируйте и скопируйте vim.exe везде, где он доступен в контейнере Docker). — Питер Мортенсен 15 сен. ’18 в 23:38
добавить комментарий |

Если вы привыкли к vi и не хотите соглашаться на встроенный редактор, вы можете получить Vim для Windows . Он будет запускаться из командной оболочки. Или попробуйте WinVi.


10

Верьте или нет, EDLIN.EXE все еще около по крайней мере в этой системе Vista.

Простите, я тихонько рыдаю про себя …

Улучшите этот ответ
ответил 10 сентября ’10 в 7:04
  • 7
    Он был окончательно удален в Windows 7 (по крайней мере, 64-битные версии ). — paradroid 10 сен. ’10 в 7:11
  • 2
    @ jason404: он все еще включен в 32-битную Windows 7. — Деннис Уильямсон, 10 сентября 2010 г., 15:08
  • 2
    edlin — это 16-разрядная программа, поэтому она недоступна в 64-разрядных версиях Windows. Однако я не удивлюсь, если кто-то здесь заявит, что он все еще присутствует в 32-разрядной версии Windows 10. — TSJNachos117, 12 мая 2015 г., 7:54
  • 1
    @ TSJNachos117 Это действительно в x86 Windows 10. — Брайан Дадди, 12 окт. : 19
  • Не удивлен все. — TSJNachos117, 30 янв. ’17 в 21:44
добавить комментарий |

Хотите верьте, хотите нет, но EDLIN.EXE все еще находится рядом с по крайней мере в этой системе Vista.

Простите, я тихонько рыдаю про себя …


9

Я не знаю о SSH или о чем-то (еще?), связанном с сервером , так что простите меня, если это «решение» бесполезно. Если вы хотите редактировать файлы в командной строке, вы можете получить версию Nano для Windows.

В качестве примечания, эти маленькие значки ^ внизу окна должны представлять кнопку Ctrl . Например, ^ X Exit означает, что вы можете выйти из программы, используя Ctrl X .

Кроме того, Nano иногда добавляет дополнительные символы новой строки при сохранении файлов. Кажется, это какая-то ошибка с переносом слов в Nano.

Я также видел порты vi для Windows, хотя я использовал тот, который, похоже, делает окно командной строки таким маленьким, как это может быть, оставив только строку заголовка (что означает, что остальная часть окна также может быть невидимой, поскольку вы не можете видеть, что делаете). Однако версия Vim для Windows, похоже, работает довольно хорошо.

Улучшите этот ответ
отредактировал 15 сентября ’18 в 23:41
Питер Мортенсен
11.3k2222 золотых знака6464 серебряных знака8686 бронзовых знаков
ответил 22 июля ’13 в 6:52
  • 2
    Перед поиском тех, кто работают, но бесполезные решения », — подумал я для Windows-порта Nano. Он использует cygwin.dll и не более того. Я пикетировал самую легкую версию, которую могу, с netcologne.dl.sourceforge.net/project/nano/nano/1.0.8/…. Спасибо. — m3nda 26 янв. ’17 в 16:46
  • Как отметил @gman, если у вас установлен git, значит, у вас уже есть nano.exe . Кроме того, довольно просто установить nano из командной строки с помощью chocolatey (chocolatey.org/install#individual). После установки chocolatey установите nano, набрав choco install nano . — cowlinator 17 июл. ’20 в 17:01
добавить комментарий |

Я не знаю про SSH или что-то (еще?), связанное с сервером, так что простите меня, если это «решение» бесполезно . Если вы хотите редактировать файлы в командной строке, вы можете получить версию Nano для Windows..

В качестве примечания: эти маленькие знаки ^ внизу окна должны представлять кнопку Ctrl . Например, ^ X Exit означает, что вы можете выйти из программы, используя Ctrl X .

Кроме того, Nano иногда добавляет дополнительные символы новой строки при сохранении файлов. Кажется, это какая-то ошибка с переносом слов в Nano.

Я также видел порты vi для Windows, хотя я использовал тот, который, похоже, делает окно командной строки таким маленьким, как это может быть, оставив только строку заголовка (что означает, что остальная часть окна также может быть невидимой, поскольку вы не можете видеть, что делаете). Однако версия Vim для Windows, похоже, работает довольно хорошо.


7

Если у вас установлен git для Windows, то, скорее всего, и nano, и vim доступны по адресу

  C:  Program Files  Git  usr  bin  nano  .exeC:  Program Files  Git  usr  bin  vim.exe  

Для запуска из командной строки (cmd.exe)

  "c:  Program Files  Git  usr  bin  nano.exe"  

Для запуска в PowerShell

   & 'C:  Program Files  Git  usr  bin  nano.exe'  

Они оба отлично работают даже по ssh.

Улучшите этот ответ
ответил 16 июня ‘ 20 в 8:25
  • Спасибо! Git imo — более разумная зависимость, которая, скорее всего, уже находится на сервере, в отличие от WSL или других сторонних текстовых редакторов. — Конафа 12 июл.2020, в 1:02
добавить комментарий |

Если у вас установлен git для Windows, то, скорее всего, nano и vim доступны по адресу

  C:  Program Files  Git  usr  bin  nano.exe C:  Program Files  Git  usr  bin  vim.exe  

Для запуска из команды подсказка (cmd.exe)

  "c:  Program Files  Git  usr  bin  nano.exe"  

Для запуска в PowerShell

  & 'C:  Program Files  Git  usr  bin  nano.exe'  

Оба они отлично работают даже по ssh.


3

ОБНОВЛЕНИЕ 2020:

В Win10 просто включите подсистему linux, тогда у вас будет большая часть вещей Linux, таких как vim и nano :

  c:> bash $: nano ваш файл. txt  

Улучшите этот ответ
ответил 03 июля ’20 в 15:50
  • 1
    Подсистема linux? Это что, теперь в W10? — Томас Кимбер, 8 августа ’20 в 10:15
  • 1
    Хорошо, просто погуглил — хорошая идея, но установить весь дистрибутив Linux, чтобы включить редактор терминала? Это натянуто. Тем не менее, возможно, попробуем;) — Томас Кимбер 8 авг., 10:30
добавить комментарий |

ОБНОВЛЕНИЕ 2020:

В Win10 просто включите подсистему linux, тогда у вас будет большая часть Linux такие вещи, как vim и nano :

  c:> bash $: nano yourfile.txt код> 

1

Если на удаленном компьютере Подсистема Windows для Linux установлена, вы можете ввести bash , чтобы следующие команды интерпретировались WSL. Отсюда вы можете ввести nano FILENAME или vim FILENAME или любой другой текстовый редактор Linux, который вы предпочитаете. Чтобы выйти из WSL и вернуться в обычную командную строку, введите exit или logout .

Это пригодилось, когда я получал доступ сервер Windows Jupyter Notebook и хотел отредактировать .gitattributes , скрытый файл, который не отображается в графическом интерфейсе Jupyter. Этот ответ основан на приведенном выше комментарии SajanGohil.

Улучшите этот ответ
ответил 26 мая ’20 в 15:57
добавить комментарий |

Если на удаленном компьютере установлена ​​подсистема Windows для Linux, вы можете ввести bash , чтобы получить следующий команды, интерпретируемые WSL. Отсюда вы можете ввести nano FILENAME или vim FILENAME или любой другой текстовый редактор Linux, который вы предпочитаете. Чтобы выйти из WSL и вернуться в обычную командную строку, введите exit или logout .

Это пригодилось, когда я получал доступ сервер Windows Jupyter Notebook и хотел отредактировать .gitattributes , скрытый файл, который не отображается в графическом интерфейсе Jupyter. Этот ответ основан на комментарии SajanGohil выше..


1

Используйте vim или nano .

Установите vim с помощью choco install vim , используя шоколадный менеджер пакетов.

(Также может быть доступна версия Scoop, но я не проверял.)

Хотя nano также существует как choco , он очень устарел. Вместо этого установите этот файл nano. Однако при использовании через SSH управляющие символы nano немного сбиваются с толку, поэтому вы можете потерять некоторые, поскольку Windows использует собственный API для управления экранными символами, а не POSIX. Поэтому, хотя в настоящее время ведется большая работа по обеспечению совместимости с Win10 в будущем.

Затем вы можете запустить: nano -cg some.txt , но курсор будет отображаются только в нужном месте, когда вы нажимаете CTRL-L . (Вот почему vim предпочтительнее.)

Улучшите этот ответ
отредактировано 31 мая ’20 в 07:24
ответил 16 мая ’20 в 21:35
  • 2
    Конечно, для этого требуется установка Chocolately — mic 26 мая ’20 в 15:38
  • Спасибо, микрофон, я добавил эту ссылку . — not2qubit 31 мая ’20 в 7:25
добавить комментарий |

Используйте vim или nano .

Установите vim с помощью choco install vim , используя шоколадный менеджер пакетов.

(Также может быть доступна версия Scoop, но я не проверял.)

Хотя nano также существует как choco , он очень устарел. Вместо этого установите этот файл nano. Однако при использовании через SSH управляющие символы nano немного сбиваются с толку, поэтому вы можете потерять некоторые, поскольку Windows использует собственный API для управления экранными символами, а не POSIX. Поэтому, хотя в настоящее время ведется большая работа по обеспечению совместимости с Win10 в будущем.

Затем вы можете запустить: nano -cg some.txt , но курсор будет отображаются только в нужном месте, когда вы нажимаете CTRL-L . (Вот почему vim предпочтительнее.)



Изучите командную строку в терминале

Создание папок — это круто, но папка без содержимого так же полезна, как и пустая коробка!

Теперь, когда вы знакомы с созданием папок через командную строку, пришло время заполнить эти папки файлами..

Мы будем придерживаться формата предыдущей главы, то есть покажем один пример создания файлов без кода в них, а другой. с кодом . Таким образом, даже если вы еще не программист, вы сможете понять, почему папки и файлы также полезны для программистов!

Создание файлов

Не -пример кода

В предыдущей главе вы создали структуру папок для школьных курсовых работ . Эта папка называлась вторым семестром. В качестве небольшого упражнения в предыдущей главе вы также создали папки внутри папки второго семестра для каждого курса (история искусств, биология и т. Д.).

Как вы понимаете, разные Для курсов потребуются файлы разных типов внутри. Например, на уроке гуманитарных наук, таком как история искусства, может потребоваться конец курсовой работы. Скорее всего, это текстовый файл. 🎨 Может быть, на уроке биологии потребуются исследования и результаты этого семестра! Скорее всего, это электронная таблица. 🐢

Вы можете создавать все типы файлов из самой командной строки.

Это намного быстрее, чем создание файла по отдельности через различные приложения, такие как Microsoft Excel или текстовый редактор, и запустив «Сохранить как».

Давайте сначала поработаем с примером истории искусства. Если вы используете команду cd для перехода в каталог «История искусства», вы можете затем использовать команду под названием touch , чтобы создать файл для нашего конца. курсовой работы.

Touch — команда звучит довольно жутко, но вот что она делает:

  • указывает вашей системе искать определенный файл

  • Если файл еще не существует, ваша система создаст этот файл для вас.

В этом случае давайте создадим файл с именем term-paper.txt .

команда будет выглядеть так:

  touch term-paper.txt  

Это так просто! Теперь, если вы снова посмотрите в Finder, вы увидите, что этот файл был создан внутри вашей папки «История искусства». В настоящее время он пуст, но вы можете открыть его в любое время из Терминала, чтобы редактировать содержимое, как обычно:

  открыть курсовую работу  .txt  

Теперь пора создать второй файл. Этот второй файл будет в папке «Биология». Это означает, что мы должны сменить каталоги на папку Biology!

Вы можете применить на практике смену директорий для перехода на один уровень вверх. Две точки представляют родительский каталог каталога, в котором вы сейчас находитесь, поэтому вы можете cd .. переместиться на один уровень вверх в структуре папок.

  cd ..  

На этом этапе вы вернетесь в каталог «Второй семестр».

Теперь вы можете ввести cd Biology , чтобы перейти в каталог Biology.. Отсюда вы можете написать ту же сенсорную команду с именем файла, который вы хотите создать, и расширением файла.

  touch research-sizes.csv  

Вот как выглядит вся серия команд:

Запустите команду open, чтобы открыть файл

Обратите внимание, что после запуска open research-sizes.csv файл открывается автоматически в Microsoft Excel. Терминал достаточно умен, чтобы знать, какое приложение должно открывать файлы какого типа. 👍

Файл открывается в правильном приложении автоматически!
Пример кода

В предыдущей главе вы видели, как создать базовую структуру папок для статического веб-сайта. Была папка CSS и папка для изображений.

Однако обе они пусты. Давайте добавим файл!

Попав в каталог project , вы создадите пустой HTML-файл . Этот файл обычно является основной страницей любого базового проекта кода. HTML-файлы — это то место, где будет находиться структура веб-страницы , и где вы определяете абзацы или заголовки, где вы хотите использовать элементы, такие как панели навигации, или как текст должен быть отформатирован.

Выполните коснитесь плюс имя файла — index.html — для его создания:

  touch index.html  

Теперь, набрав ls , вы можете увидеть, что проект содержит папку CSS, папку для изображений, и файл с именем index.html . Мы вернемся к этому файлу через секунду.

Создание файла index.html

Давайте cd в каталог css и создадим здесь другой файл. Этот новый файл будет иметь другое расширение, чем другие, которые мы создали до сих пор: это не будет .txt или .csv. ни .html. Это будет .css, потому что он будет содержать код CSS!

  cd css  
  touch main.css   

Я даже могу открыть HTML-файл в моем браузере, чтобы просмотреть содержимое моего файла:

  open index.html  

Теперь вы понимаете, насколько универсальным и оптимизированным является создание файлов из командной строки. Это намного быстрее, чем создание файлов по отдельности с помощью различных приложений, таких как Word.

Вам просто нужно знать имя вашего файла и расширение вы хотите, и вы можете сэкономить много времени и полностью избежать процесса Сохранить как в разных приложениях.

В следующей главе вы увидите, как перемещать и копировать часть этого контента вы создали.

  • #
Оцените статью
logicle.ru
Добавить комментарий