Jak edytować pliki tekstowe w wierszu polecenia systemu Windows?


90

Na Unixie używałbym vi , ale nie wiem, jakie to polecenie jest w systemie Windows. W rzeczywistości próbuję edytować pliki przez SSH w systemie Windows Server 2008.


1
Myślę, że przyjęta odpowiedź powinna zostać zmieniona na Squillman (ponieważ jest to jedyna, która będzie działać na większości współczesnych komputerów PC - i być może w kontenerach Docker).
— Peter Mortensen,


jeśli zrobić posiada graficzny pulpit, ale po prostu chcesz edytować plik bezpośrednio od cmdNastępnie można użyć np notatniknotepad myfile.txt
— ccpizza

Odpowiedzi:


51

edit filename

Nie będę ręczyć za jego funkcjonalność i przestarzały interfejs GUI, ale jest on instalowany domyślnie, nawet w systemie Windows 7.

Edycja: oprócz 64-bitowych wersji systemu Windows.


13
Na wszystkich wersjach systemu Windows? Najwyraźniej nie ma „edycji” w systemie Windows 7.
— Snark,

12
Dziwne ... najwyraźniej jest domyślnie zainstalowany na Windows 7 32-bit, ale nie na Windows 7 64-bit. To smutne.
— nhinkle

6
@nhinkle: Wydaje mi się, że pamiętam coś o 16-bitowych aplikacjach niedostępnych w 64-bitowych instalacjach Windows.
— intuicyjnie

4
Potwierdzono, że NIE działa w Win 10 ... Naprawdę nie mogę uwierzyć, że Windows nie ma tak podstawowych narzędzi i nikomu nawet to nie przeszkadza
— Rafael T

2
Jest to po prostu zła odpowiedź, mówiąc ogólnie o „Windowsie”. Dzisiaj Windows to także Win7-64bit, Win8-64bit, Win8.1-64bit, Win10. „edycja” nie może być poprawną odpowiedzią na pytanie z dzisiejszego punktu widzenia.
— Mehrdad Mirreza

68

Najprostszym rozwiązaniem we wszystkich wersjach systemu Windows jest:

C:\> notepad somefile.txt

I nie wymaga dodatkowego oprogramowania.


27
Fajnie, ale nie po SSH
— Casebash

4
Ach Dobrze. Windows nie ma wbudowanego edytora wiersza poleceń. Prawdopodobnie będziesz musiał zainstalować wersję Gnu edytora, którego chcesz użyć. Ponieważ już zainstalowałeś sshserwer, nie powinno to stanowić dla ciebie problemu.
— BillP3rd,

8
Tak jak powiedział OP ... „Właściwie próbuję edytować pliki przez ssh ...”
— daviewales

7
bezużyteczne odpowiedzi, zarówno dla użytkowników, SSH i dla tych, którzy chcą edytować pliki IN cmd okna, a nie poza nim
— vladkras

3
To nie zadziała w kontenerze Docker opartym na „windowsservercore”
— Peter Mortensen

42

W wierszu polecenia systemu Windows wpisz con con, a następnie nazwę pliku docelowego. ( copy con c:\file.txt).

Następnie wprowadź tekst, który chcesz umieścić w pliku.

Zakończ i zapisz plik, naciskając CTRL- Zwtedy Enterlub F6potem Enter.

Jeśli chcesz zmienić tekst w istniejącym pliku, po prostu wyświetl tekst za pomocą polecenia, typea następnie nazwy pliku, a następnie po prostu skopiuj i wklej tekst do copy conpolecenia.


7
Twardy rdzeń. Staraj się nie robić literówek, bo będziesz musiał zacząć od nowa. Cóż, backspace działa, jeśli złapiesz błąd przed naciśnięciem Enter.
— Kevin Panko

Nie działa z psexec. Próbowałem edytować plik hosts, copy con hostsale ^ Z nie zapisuje, a ^ C nie anuluje! Musiałem zamknąć okno cmd, aby wyjść. Plik nie został zmieniony.
— Iain Samuel McLean Starszy

Uwaga: F6 można użyć zamiast [Ctrl] - [Z]
— MonoThreaded

W kontenerze Docker opartym na „windowsservercore” (CMD), Ctrl + C pracował dla kończącej sekwencji klawiszy.
— Peter Mortensen

14

Jeśli jesteś przyzwyczajony do vi i nie chcesz zadowolić się wbudowanym edytorem, możesz pobrać Vima na Windows . Będzie działał z powłoki poleceń. Lub wypróbuj WinVi .


to powinienem zaznaczyć jako odpowiedź, ponieważ editzostał usunięty z Win 10
— Luke

1
Jest o wiele lepsze: działa również w kontenerze Windows Docker (najłatwiej jest uzyskać „plik wykonywalny konsoli Win32”, np. Vim81w32.zip - rozpakuj i skopiuj vim.exetam, gdzie jest on dostępny w kontenerze Docker).
— Peter Mortensen

9

Wierzcie lub nie, EDLIN.EXEwciąż jest <shudder>przynajmniej w tym systemie Vista.

Przepraszam, gdy szlocham cicho do siebie ...


6
Został ostatecznie usunięty w systemie Windows 7 (przynajmniej wersje 64-bitowe).
— paradroid

1
@ jason404: Nadal jest zawarty w 32-bitowym systemie Windows 7.
— Dennis Williamson,

2
edlin to program 16-bitowy, dlatego nie jest dostępny w 64-bitowych wersjach systemu Windows. Nie
— zdziwię się

1
@ TSJNachos117 Rzeczywiście jest w systemie Windows 10 w wersji x86
— Brian Duddy

Wcale nie zaskoczony.
— TSJNachos117

8

Nie wiem o SSH ani o czymkolwiek innym (związanym z serwerem), więc wybacz mi, jeśli to „rozwiązanie” jest bezużyteczne. Jeśli chcesz edytować pliki w wierszu polecenia, możesz pobrać wersję Nano dla systemu Windows .

Na marginesie, te małe ^znaki na dole okna powinny reprezentować Ctrlprzycisk. Na przykład ^X Exitoznacza, że ​​możesz wyjść z programu za pomocą Ctrl- X.

Ponadto Nano czasami dodaje dodatkowe nowe wiersze podczas zapisywania plików. To wydaje się być pewnym błędem w zawijaniu słów Nano.

Widziałem również porty vi dla Windows, chociaż użyłem takiego, który sprawia, że ​​okno wiersza polecenia jest tak małe, jak to tylko możliwe, pozostawiając tylko pasek tytułu (co oznacza, że ​​reszta okna może być niewidoczna , ponieważ nie możesz zobaczyć, co robisz). Jednak wersja Vima dla Windows wydaje się działać całkiem nieźle.


2
Zanim poszukałem tych „może działać, ale są bezużyteczne rozwiązania”, pomyślałem o porcie Windows dla Nano. Używa cygwin.dll i nic więcej. Wybrałem najlżejszą wersję, jaką mogę, z netcologne.dl.sourceforge.net/project/nano/nano/1.0.8/… . Dziękuję Ci.
— erm3nda
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.