1

В чем разница между использованием> и >>?

Как я могу использовать оба <и> (операторы перенаправления) в одной команде?

3 ответа3

2

> Перенаправляют данные из stdout (чтение стандартного вывода) в файл.

ls -a> my-files.txt

примет вывод команды ls -a и поместит его в файл с именем my-files.txt удалив / перезаписав файл, если он существует. Использование >> вместо > в приведенном выше примере не перезапишет файл, если он существует, но добавит вывод ls -a в конец my-files.txt

< с другой стороны, отправляет данные в программу stdin (см. стандартную версию в). Если у меня есть файл my-files.txt и я хочу знать, сколько слов в нем содержится, я могу отправить его в программу wc . Эта программа принимает данные на этом stdin так данные ему я

wc -w <my-files.txt

И, наконец, если я хочу сохранить вывод этой команды в новый файл, я могу использовать оба варианта так

wc -w <my-files.txt> wordcount.txt

0

>> означает просто добавить / создать, если не существует, очень полезно для журналов.

<< также существует и полезно. Пытаться:

$ cat > a <<EOF
some text here
more text
EOF

$ cat a

Вы видите , что файл a содержит текст между двумя EOF

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .