как использовать перенаправление вывода, чтобы продемонстрировать, что ДЕРЕВО делает [дублирует]

На этот вопрос уже есть ответ:

Это вопрос, который я нашел в тесте:

Запустить дерево из вашего домашнего каталога.
Объясните и продемонстрируйте, что он делает.
Используйте для этого перенаправление вывода.

Я не понимаю, что такое перенаправление вывода. Не могли бы вы мне это объяснить?

-1
задан 8 October 2015 в 20:26

2 ответа

дерево : tree списки содержание справочников в подобном дереву формате. Это - действительно опрятная и полезная программа, которую Вы можете использовать в командной строке, чтобы рассмотреть структуру Вашей файловой системы.

переназначение продукции средства хранят продукцию команды где-то в другом месте кроме простой печати на терминале. если Вы хотите сохранить tree, продукция команды в файле тогда использует команду

tree > test 

, который перенаправит продукцию к этому файлу. эта команда создаст файл test и если это уже выйдет тогда, то она заменит it't содержание tree продукция команды. если Вы не хотите заменять, и просто хотеть приложить тогда команду использования

tree >> test

это приложит продукцию tree команда к файлу test. Вы можете дать весь путь файла, где Вы хотите сохранить продукцию.

2
ответ дан 9 October 2015 в 06:26
  • 1
    Да, это делает рекурсивные запросы, поскольку это, кажется, затронуто флагом +trace. Но я также определил вперед только; в конфигурационном файле. Можно было ожидать, что связывают с той опцией, не сделал бы итеративные запросы.. Или it' s роют, кто делает итеративные запросы и не связывает? – Bulat M. 31 January 2017 в 00:46

Вероятно, в том перенаправлении вывода контекста = перенаправление стандартного вывода (stdout) в регулярный файл.

tree >tree_output.txt

Однако перенаправление вывода в общем означает перенаправление одного из потоков вывода по умолчанию (стандартный вывод (stdout) и стандартная погрешность (stderr), обычно оба направили к терминалу) к чему-либо, что можно считать файлом (регулярный файл, stderr если stdout рассматриваемый поток, stdout если stderr рассматриваемый поток, канал, именованный канал (FIFO), блочное устройство, устройство посимвольного ввода-вывода...), и это не ограничено перенаправлением стандартного вывода (stdout) в регулярный файл как в примере.

Таким образом, существует много возможных перенаправлений вывода;

Предположение ради краткости, что рассматриваемый вывод является стандартным выводом (stdout), это наиболее распространенные перенаправления:

  • echo foo >file: stdout перенаправляется в регулярный файл;
  • echo foo >&2: stdout перенаправляется к stderr;
  • echo foo | cat: stdout перенаправляется к каналу;
  • mkfifo fifo && echo foo >fifo: stdout перенаправляется к именованному каналу (FIFO);
  • echo foo >/dev/sdX: stdout перенаправляется к блочному устройству (не ДЕЛАЙТЕ ЭТОГО - оно могло сделать только портить таблицу разделов рассматриваемого блочного устройства);

Более тайные перенаправления:

  • echo foo >/dev/tty: stdout перенаправляется к устройству посимвольного ввода-вывода, которое, оказывается, текущий псевдотерминал;
  • Удар Ctrl+Alt+F1, входа в систему, поражая Ctrl+Alt+F7, поражая Ctrl+Alt+T, работая echo foo>/dev/tty1 и удар Ctrl+Alt+F1; stdout перенаправляется к устройству посимвольного ввода-вывода, которое, оказывается, первый псевдотерминал;

Таким образом, перенаправление вывода в общем означает перенаправление одного из потоков вывода по умолчанию (стандартный вывод (stdout) и стандартная погрешность (stderr), обычно оба направили к терминалу) к чему-либо, что можно считать файлом;

Для выполнения tree с помощью перенаправления вывода (и на самом деле показывая что-то на терминале) существует несколько путей:

  • tree >tree_output.txt && cat tree_output.txt: выполнения tree перенаправление stdout в регулярный файл;
  • tree >&2: выполнения tree перенаправление stdout кому: stderr;
  • tree | cat: выполнения tree перенаправление stdout к каналу;
  • mkfifo fifo && tree >fifo: выполнения tree перенаправление stdout к именованному каналу;
  • tree >/dev/tty: выполнения tree перенаправление stdout к устройству посимвольного ввода-вывода (текущий псевдотерминал);
  • Удар Ctrl+Alt+F1, входа в систему, поражая Ctrl+Alt+F7, поражая Ctrl+Alt+T, работая echo foo>/dev/tty1 и удар Ctrl+Alt+F1tree >/dev/tty1: выполнения tree перенаправление stdout к устройству посимвольного ввода-вывода (первый псевдотерминал);
0
ответ дан 9 October 2015 в 06:26

Другие вопросы по тегам:

Похожие вопросы: