Jak utworzyć prosty plik .txt (tekstowy) za pomocą terminala? [Zamknięte]

77

Próbuję tylko przejrzeć podstawowe polecenia terminala. Mimo to, jak utworzyć plik tekstowy przy użyciu wyłącznie terminala?

Mike Wentworth
źródło
Chociaż pytanie jest naprawdę zbyt ogólne, szybki poradnik (vim, edytory, przekierowanie poleceń powłoki i tak dalej) może być przydatny w przyszłości, szczególnie w połączeniu z liczbą wyświetleń, wynikami głosowania postu i odpowiedziami. Może byłby najbardziej przydatny jako post społeczności wiki.
user259412

Odpowiedzi:

106

Nie można użyć terminala do utworzenia pliku. Możesz użyć aplikacji działającej w terminalu. Wystarczy powołać dowolnego edytora non-GUI ( emacs -nw, joe, nano, vi, vim, ...).

Jeśli chciałeś użyć wiersza poleceń, pytasz, jak utworzyć plik za pomocą powłoki. Zobacz, jaka jest dokładna różnica między „terminalem”, „powłoką”, „tty” i „konsolą”?

Podstawowym sposobem utworzenia pliku z powłoką jest przekierowanie wyjścia . Na przykład następujące polecenie tworzy plik o nazwie foo.txtzawierający wierszHello, world.

echo 'Hello, world.' >foo.txt

Jeśli chcesz napisać wiele wierszy, oto kilka możliwości. Możesz użyć printf.

printf '%s\n' 'First line.' 'Second line.' 'Third line.' >foo.txt

Możesz użyć literału łańcuchowego zawierającego znaki nowej linii.

echo 'First line.
Second line.
Third line.' >foo.txt

lub

echo $'First line.\nSecond line.\nThird line.' >foo.txt

Inną możliwością jest grupowanie poleceń.

{
  echo 'First line.'
  echo 'Second line.'
  echo 'Third line.'
} >foo.txt

W wierszu poleceń możesz to zrobić bardziej bezpośrednio za pomocą cat. Przekieruj wyjście do pliku i wpisz wiersz wejściowy wiersz po wierszu na catstandardowym wejściu. Naciśnij Ctrl+ Dna początku wiersza, aby wskazać koniec wprowadzania.

$ cat> foo.txt 
Pierwsza linia. 
Druga linia. 
Trzecia linia
Ctrl+D

W skrypcie użyłbyś tutaj dokumentu, aby osiągnąć ten sam efekt:

cat <<EOF >foo.txt
First line.
Second line.
Third line.
EOF

Jeśli chcesz tylko utworzyć pusty plik, możesz użyć touchpolecenia: tworzy plik, jeśli nie istnieje, i po prostu aktualizuje datę ostatniej modyfikacji, jeśli istnieje.

touch foo.txt

Równoważnie:

>>foo.txt

tzn. otwarte foo.txtdo dołączenia, ale zapisz 0 bajtów - tworzy plik, ale go nie modyfikuje. W przeciwieństwie do touchtego nie aktualizuje daty ostatniej modyfikacji pliku, jeśli już istniał.

Aby utworzyć pusty plik i usunąć jego zawartość, jeśli plik już istnieje, możesz użyć

>foo.txt
Gilles
źródło
13
touch ~/Desktop/something.txt

Spowoduje to utworzenie pustego txtpliku.

Lub

echo "Hello" > ~/Desktop/somethingelse.txt

Spowoduje to utworzenie txtpliku z napisem „Hello”.

nano ~/Desktop/anotherfile.txt

Spowoduje to otwarcie ~/Desktop/anotherfile.txtsię nanolub jeśli nie istnieje, to będzie go utworzyć i otworzyć go w nano.

To samo można zrobić po prostu przez zastąpienie nanoz emacslub vimi będzie korzystał emacslub vimzamiastnano

Wyświetlana nazwa
źródło
Należy również wspomnieć cato <<, i wspominając >>.
o11c
Nie wymyślajmy na nowo koła. <<i >>są omówione w rozdziale Jakie są operatory kontroli i przekierowania powłoki?
G-Man
9

Aby utworzyć pusty plik, wystarczy:

> my.txt
SAM
źródło
2
W niektórych powłokach (zsh, tcsh, ...) co najmniej :> my.txtjest potrzebne. :to puste polecenie.
jofel
{echo „Pierwsza linia”. echo „Druga linia”. echo „Trzecia linia”. }> foo.txt nie działa
Waterfr Villa
2

Możesz użyć programu do edycji nano, vi lub emacs, aby utworzyć plik na poziomie terminala. Jeśli używasz systemu Windows, musisz powiedzieć systemowi, aby nie używał programu w GUI; ale i tak użyję emacsa jako przykładu.

Od uderzenia; rodzaj:

 emacs filename.txt (press enter) - it will create an empty file with the filename specified "filename.txt". It will save "filename.txt" from which ever 
directory type in "emacs filename.txt" command.

należy pamiętać, że we wszystkich systemach UNIX VI jest z tym wyposażony; emacs nie, musisz zainstalować emacs. Z drugiej strony Nano jest bardziej popularny; na wszelki wypadek, jeśli to nie odpowiada, oznacza to, że kiedy „nano filename.ext” i nic się nie stanie, musisz go zainstalować.

po wydaniu vi nazwa_pliku.txt najprawdopodobniej skończysz tworzenie nowego pliku. Zanim zaczniesz, powinieneś sprawdzić vi, emacs lub nano, jak korzystać z google. Jak pisać plik, edytować go, korzystać z jego narzędzi do wyszukiwania i zamiany tekstu, to inaczej w tych programach do edycji. Lubię emacsa ze wszystkich wyborów, ale znajdziesz programistów, którzy mają obsesję na punkcie vi i nano lub faworyzują ich

unixmiah
źródło
bez opcji edytora graficznego w emacs jest „emacs nazwa_pliku.txt -nw” gdzie „-nw” oznacza brak okna graficznego użytkownika, ma okna
unixmiah
2

Coś pomocnego, gdy utkniesz i musisz utworzyć wielowierszowy plik tekstowy w wierszu poleceń, wygląda mniej więcej tak:

# cat <<'EOF' > textfile
> This "should"
> prove useful, 'maybe'.
> EOF
# cat textfile 
This "should"
prove useful, 'maybe'.

Możesz zastąpić catinne polecenie, na przykład grepi wzorzec , i grep wykona swoją pracę na danych wejściowych, a to wyśle ​​do pliku w ten sam sposób.


źródło