При запуске команд в Терминале OS X, они, как правило выводят некоторые
результаты, такие, как информация, которую вы пытаетесь посмотреть или
подробная информация о запущенной команде. По умолчанию этот вывод
отправляется в окно Терминала, где он и отображается, прежде чем команда
завершится и вернёт вас в командную строку. Если вы планируете
использовать этот вывод для чего-то, вы можете скопировать и вставить
его в другой файл, но есть и другие способы сохранить информацию,
которая может оказаться полезной.
Один общий подход к сохранению
терминального вывода - перенаправить его в файл на диске, что может быть
сделано путем добавления к команде символа ">" со следующим за ним
путём к файлу, в котором вы хотели бы сохранить результат.
Например,
команда "ls" выведет список содержимого текущего каталога. По умолчанию
этот список будет отображаться в терминале, но если вы используете
следующую команду это сохранит список в файле под названием "files.txt"
на рабочий стол:
ls > ~/Desktop/files.txt
Если
документ "files.txt" уже существует, то эта команда перезапишет его
ваводом команды "ls", но вы можете использовать два символа ">" ("ls
>> ~ / Desktop / files.txt"), чтобы дописать новый вывод в конец
файла вместо его полной перезаписи. Конечно, чтобы посмотреть на вывод,
вы все равно должны перейти на этот файл и открыть его.
Другой
подход заключается в перенаправлении результатов команде "open" и
заставить её открыть файл в текстовом редакторе, например в TextEdit.
При перенаправлении с символом ">", как отмечалось выше, вывод
команды отправляется в файл или перенаправляет вывод в другую команду,
поэтому он может управлять выводом (разобрать его, сохранить, распечатать или
воздействовать на него иным образом).
Чтобы направить вывод
команды, вы просто используете символ вертикальной черты ("|"), так,
например, вывод команды "ls" можно передать команде "open", которая
задаётся с тегом "-fe" и тем самым открыть его в TextEdit (текстовым
редактором по умолчанию):
ls | open -fe
Когда вы
запустите эту команду, вместо вывода в терминале, терминал просто
перенаправит его в другую команду и результат будет выведен в простом
текстовом окне TextEdit. Вы можете потом легко разобрать или скопировать
и вставить текст, так как теперь вы можете работать с ним, используя
мышь и клавиши со стрелками.
Открытие вывода в TextEdit удобный способ,
но если вы хотите переместить его в другой документ такой, как Microsoft Word или Apple Pages
или если вы хотели бы отправить вывод команды кому-нибудь по электронной почте, то вам
все равно нужно выбрать его и скопировать. Если это именно то, что все это время вам было нужно, то вы можете пропустить шаг сохранения в
текстовый файл, сохранив вывод команды непосредственно в буфер обмена OS X. Чтобы сделать это, можно направить вывод в "pbcopy" вот так:
ls | pbcopy
После выполнения этой команды вы можете открыть любую программу и вставить, нажав Command-V, и
вывод должен быть сохранен в виде текста.