Как сохранить результат команды в текстовом файле Linux

{title}

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

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

На этот раз в этом руководстве будет проанализировано, как экспортировать результат команды в Linux в текстовый файл. Для этого мы будем использовать Ubuntu 17.04, и эти команды можно использовать как в среде Linux, так и в среде macOS.

Параметры Linux

Помните, что в средах Linux мы можем использовать следующие параметры:

  • Пункт представлен символом | что позволяет нам переключаться между командами.
  • Оператор &, который пропускает вывод ошибки и переходит к следующей команде.

Далее мы увидим различные альтернативы, чтобы иметь возможность сохранять информацию, которую команда выдает в Linux.

1. Определите вывод информации о команде, исключая ошибки в Linux

Шаг 1
В первую очередь для выполнения соответствующих тестов мы создадим определенные папки и назначим соответствующие разрешения, для этого мы выполним следующие команды в их порядке:

 sudo mkdir Solvetic1 sudo mkdir Solvetic2 sudo chmod 000 Solvetic1 sudo chmod 000 Solvetic2 

{title}

Шаг 2
Чтобы перенаправить вывод информации о команде в Linux, используйте операторы> и >>, и они перенаправляют вывод в определенный текстовый файл, но пропустят ошибки, для этого мы можем выполнить следующее.

 du -h ./*> file size.txt 

{title}

Шаг 3
Мы можем увидеть результат в текстовом формате:

{title}

Шаг 4
Если мы используем оператор >>, результат будет таким же, но результат будет добавлен в конец файла:

 du -h ./* >> размер файла .txt 

{title}

2. Запишите информацию о команде, показывая только ошибки в Linux

Шаг 1
С помощью предыдущих команд мы генерируем вывод информации без ошибок, теперь для отображения результатов, показывающих ошибки, мы будем использовать параметр 2> следующим образом:

 du -h ./* 2> errors.log 

Шаг 2
Результат будет отображаться в терминале следующим образом:

{title}

Шаг 3
Если мы хотим получить этот результат без записи информации, мы выполним следующую команду:

 du -h ./* 2 >> errors.log 

3. Зарегистрируйте информацию о команде, ничего не отображая в Linux


Эта опция используется в целях безопасности, поскольку позволяет сохранить результат, но его не видно на экране терминала.

Шаг 1
Для достижения этого мы будем использовать оператор &> следующим образом в этом случае, используя дисковое использование:

 du -h ./* &> Disk_use.log 

$config[ads_text5] not found

Шаг 2
Мы видим, что результат не отображается в терминале:

{title}

Шаг 3
Но в нашей системе был создан соответствующий файл с зарегистрированной информацией:

{title}

4. Выведите на экран информацию о команде в терминале и сохраните файл в Linux

Шаг 1
Если мы хотим, чтобы результаты отображались в терминале и сохранялись в текстовом документе, мы будем использовать параметр Tee, который обращается к результатам в два этапа, мы выполним следующее:

 du -h ./* | результаты 

$config[ads_text6] not found

{title}

Шаг 2
И одновременно был создан текстовый файл:

{title}

Шаг 3
По умолчанию параметр Tee перезаписывает изменения в каждом запросе. Если мы хотим сохранить исходные результаты и создать новый файл, мы добавим значение -a в строку для выполнения:

 du -h ./* | tee -a results.txt 

5. Разверните и сохраните всю информацию о командах в Linux

Шаг 1
Если мы хотим отобразить всю информацию, к которой следует обращаться, и таким же образом сохранить ее, мы будем использовать параметры | & и команду tee, выполнив следующее:

 du -h ./* | & tee results.txt 

{title}

Шаг 2
Чтобы этот файл не был перезаписан, мы выполним следующее:

 du -h ./* | & tee -a results.txt 

6. Показать результаты команды и сохранить результаты в Linux


Мы будем использовать команду df в качестве примера, чтобы иметь возможность видеть память и пространство нашей системы на жестком диске.

$config[ads_text5] not found

Шаг 1
Мы выполняем команду df, чтобы увидеть информацию.

{title}

Шаг 2
Мы можем использовать команду df с плагином -h, чтобы увидеть информацию более четко для нас и сделать ее более читаемой.

{title}

Шаг 3
Если теперь мы хотим, чтобы информация, выданная командой df, сохранялась в файле в то же время, когда мы видим ее на экране, мы выполним следующее, определяя выходной файл. Мы будем использовать команду cat, чтобы открыть файл после его создания.

 df -h | тройник df.log кот df.log 

$config[ads_text5] not found

{title}

Шаг 4
Теперь мы будем использовать команду tee, которую вы можете через нее прочитать со стандартного ввода и записать в вывод. Если файл уже существует, мы можем добавить новую информацию с параметрами -ao -append.

 df -h | tee -a df.log 

{title}

примечание

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

Шаг 5
Если вам нужна помощь с этими командами, вы можете использовать эти команды:

 Man DF Man Tee 
Используя эти команды, мы можем гораздо точнее контролировать информацию, отображаемую в средах Linux при выполнении команд в терминале. После этого вы можете зашифровать эти текстовые файлы так, чтобы они были в чужих руках.

$config[ads_text6] not found