Когда вы запускаете команду терминала, она обычно выводит выходные данные в терминал, чтобы вы могли немедленно их прочитать. Однако иногда вам может потребоваться сохранить выходные данные для последующего анализа или комбинации с другим инструментом.
Вы можете сделать это, используя перенаправление вывода в командной строке. Узнайте, как отправить выходные данные команды в текстовый файл в Windows, Mac и Linux.
Перенаправить вывод командной строки в файл
Для перенаправления вывода команды в файл можно использовать два оператора: >> и > . Важно понимать разницу между этими двумя операторами, чтобы избежать непреднамеренной потери данных.
Значок > создает новый файл или перезаписывает старый файл, если он уже существует. Оператор >> также создает новый файл, если он не существует, но не перезаписывает существующий файл. Если файл уже существует, текст будет добавлен в конец файла.
Чтобы перенаправить вывод команды в файл, введите команду, затем укажите оператор > или >> и, наконец, укажите путь к файлу, в который вы хотите перенаправить вывод. Например, вот как можно сохранить выходные данные команды ls, в которой перечислено содержимое каталога:
ls > /path/to/file
Замените /path/to/file полным путем к файлу, который вы хотите использовать. Команда будет выполняться автоматически, сохраняя выходные данные в указанном вами файле.
Чтобы просмотреть содержимое файла в терминале, вы можете использовать команду cat . Опять же, замените /path/to/file полным путем к файлу, который вы хотите просмотреть.
cat /path/to/file
Вы должны увидеть вывод команды в новом файле:
Перенаправить вывод ls в файл
Оператор > заменяет содержимое существующего файла. Если вы хотите сохранить результаты нескольких команд в один файл, используйте вместо этого оператор >> . Это добавится в файл, поэтому вы не потеряете предыдущие сохраненные результаты.
Например, попробуйте добавить системную информацию в конец только что созданного файла. Просто запустите uname -a в Linux/Mac или команду ver, если вы в Windows, и добавьте оператор >> вместе с путем к файлу:
uname -a >> /path/to/file
Повторите этот процесс столько раз, сколько вам нужно, продолжая добавлять вывод команды в конец файла.
Добавить вывод в файл
Экспортируйте вывод на экран и перенаправьте его в файл.
Операторы > и >> не отображают вывод команды на экране, они просто отправляют его в файл. Если вы хотите отправить вывод в файл и просмотреть его на экране, используйте команду tee.
Чтобы использовать команду tee, отправьте выходные данные другой команды в эту команду с помощью оператора вертикальной черты (|). Например, вот как можно отправить выходные данные команды ls в tee с помощью канала:
ls | tee /path/to/output.txt
Затем команда tee отправляет этот вывод как на экран, так и в указанный вами файл. Эта операция перезапишет файл или создаст новый файл, если он не существует, точно так же, как оператор > .
Чтобы использовать команду tee для вывода результата на экран и добавления его в конец файла, добавьте флаг -a перед путем к файлу, например:
uname -a | tee -a /path/to/output.txt
Вы увидите вывод команды на экране и можете использовать команду cat, чтобы убедиться, что tee также добавил ее в файл:
Добавить вывод в файл с помощью команды tee