7
ответов

Как я обрезаю ведущий и запаздывающий пробел от каждой строки некоторого вывода?

Я хотел бы удалить все продвижение и конечные пробелы и вкладки от каждой строки в выводе. Существует ли простой инструмент как обрезка, в которую я мог передать свой вывод по каналу? Файл в качестве примера: протестируйте пространство в заднем тесте...
26.08.2019
6
ответов

Полуасинхронный канал

Предположите, что у меня есть следующий канал: | b | c | d, Как я могу ожидать завершения c (или b) в sh или ударе? Это означает, что сценарий d может запустить любое время (и не должен ожидаться для), но...
02.06.2015
6
ответов

чтение списка строк от вывода записи файла до утилиты

У меня есть файл со списком строк, которые я хочу считать из другого файла. Я хочу произвести те строки к утилите (grep), который позволяет мне считать всю строку и информацию о получении по запросу от нее. Файл с...
24.07.2014
6
ответов

Действительно ли возможно питаться, Открывают Office via STDIN?

У меня есть Открыть документ Office Spreadsheet, хранивший в переменной удара. Я хочу сделать что-то как следующее для питания, Открывают Office via STDIN: повторите "$openOfficeDoc" | офис, Но он не работает....
22.04.2014
6
ответов

Почему я не могу перенаправить вывод пути от одной команды до “CD”?

Я пытаюсь заставить CD принимать имя каталога, перенаправленное к нему от другой команды. Ни один из этих методов работа: $HOME эха $ | $HOME эха $ CD | xargs CD Это действительно работает: $ CD $ (повторяют $HOME)...
05.10.2012
5
ответов

Может программа затем в конвейере видеть код выхода предыдущей программы?

Я хотел бы сделать конвейер сценариев Bash как этот prog1 | prog2 таким образом, что prog2 видят код выхода prog1 и действуют по-другому на основе той информации. Действительно ли это возможно?
08.03.2014
5
ответов

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

Я пишу сценарий удара для автоматизации дешифрования определенного файла; однако файл шифруется в 16-байтовых блоках, а не просто кодируется в целом. Вот некоторый код psuedo к кратко...
08.07.2013
5
ответов

Передача по каналу вывода к текстовому файлу в для цикла

Я пытаюсь сделать следующее в для цикла: Найдите файлы, которые удовлетворяют Эхо условия название файлов к файлу журнала. Gzip файл. Я могу заставить сценарий находить файлы и повторять их...
15.03.2013
4
ответа

Абсолютно буферный вывод команды прежде, чем передать по каналу к другой команде?

Существует ли способ только выполниться, команда за другим сделана без временного файла? У меня есть одна более длительная рабочая команда и другая команда, которая форматирует вывод и отправляет его в использование сервера HTTP...
19.03.2018
4
ответа

Создание единственного потока вывода из трех других потоков, произведенных параллельно

У меня есть три вида данных, которые находятся в различных форматах; для каждого типа данных существует сценарий Python, который преобразовывает его в единственный унифицированный формат. Этот сценарий Python является медленным и зависящим от ЦП (к...
13.09.2017
4
ответа

grep для файлов и открытый результирующие соответствия

Я пытаюсь открыть все файлы на основе некоторых возвращаемых значений от grep в командной строке. Я знаю, что могу использовать-l опцию только возвратить имена файлов, но я хотел бы объединить это так или иначе с...
13.04.2017
4
ответа

Почему не делает grep, использующего трубопровод здесь?

У меня есть следующая команда: найдите / - называют libGL.so.1, Который возвращает много строк с "Отклоненным разрешением". Я хочу исключить такие строки, таким образом, я добавил следующее: найдите / - называют libGL.so.1 | grep-v...
27.04.2016
4
ответа

Почему нет t apt-cache policy outputiped?

Не могу понять, почему $ apt-cache policy foo N: Не удалось найти пакет foo, но политика $ apt-cache foo 2> & 1 | grep. пустой. Где в последнем вызове я делаю неверное предположение? ...
07.05.2015
4
ответа

Как использовать sed для управления непрерывно выводом потоковой передачи?

Я соединяю презентацию для нетехнической аудитории. У меня есть программа, работающая в ударе, который производит непрерывный поток значений, несколько из которых важны. Я хотел бы выделиться...
05.05.2015
4
ответа

Пробелы рядом с каналами

Я видел историю | grep вздор и история |grep вздор; и вздор history|grep также работает, хотя никто когда-либо, кажется, не использует его. Есть ли любое значение в пробелах (например, передающий по каналу к/от различному...
02.03.2015
4
ответа

Разделите вход для другой команды и объедините результат

Я знаю, как объединиться, результат другой команды вставляют-t'', <(commanda) <(commandb) я знаю канал тот же вход другой кошке команду myfile | мишень> (commanda)> (commandb) Теперь как...
07.02.2015
4
ответа

Последовательные Каналы в Команду

Существует ли способ передать последовательные значения по каналу в команду? например, Если я могу command.pl и хотеть передать по каналу в ответ, затем y для подтверждения (потому что он не имеет пути к автоматическому, подтверждают)? Я попробовал эхо &q
03.12.2014
4
ответа

Перенаправление и канал производятся

об/мин - обеспечение качества> файл | туалет-l возвращается 0. Что я делаю неправильно? Я думаю, что ясно, какова моя цель, но это не работает. Действительно ли это - задание для xargs или мишени?
20.08.2014
4
ответа

Передайте вывод по каналу команды, если это успешно

INPUT_FILE ='ls-rt $MY_DIR/FILE.*.xml | направляются-1 | xargs базовое имя', я хотел выполниться, вторая команда (направляйтесь-1), только если первая команда успешна. Как я улучшаю эту команду?
24.07.2013
4
ответа

FIFO, канал и домен Unix, снабжают то же самое сокетом в ядре Linux?

Я слышал, что FIFOs являются именованными каналами. И у них есть точно та же семантика. С другой стороны, я думаю, что сокет домена Unix весьма схож с каналом (хотя я никогда не использовал его). Так интересно...
15.05.2013
4
ответа

Получение stdin от именованного канала

То, что я пытаюсь сделать, является запущенным Python в окне терминала и перенаправлении, это - stdin от именованного канала. Затем я пишу в именованный канал в другом терминале и имею ту команду, выполняются на Python...
19.04.2013
4
ответа

сохраните и выполните команду перенаправления/передавать по каналу в сценарии

Как Вы храните и позже выполняетесь, команда с перенаправлением и и канал? (И действительно ли это - канал, или перенаправление или оба, это вызывает мою проблему?) Я пытался распечатать urxvt версию в...
02.04.2013
4
ответа

Каковы преимущества использования именованного канала по каналу без имени?

Я рассматривал ряд вопросов интервью, которые задают от администратора Unix; я нашел тему названной "именованным каналом". Я погуглил тему; в некоторой степени я смог понять это названный:-...
25.03.2013
3
ответа

как передать вывод по каналу сокращения к команде foreach?

У меня есть команда сокращения, которую я хочу, который захватывает первое слово в каждой строке файла. Я затем хочу поместить каждое слово от команды сокращения в foreach. Я затем хочу сделать команду grep в теле...
04.02.2019
3
ответа

Действительно ли безопасно передать stdout по каналу к B параллельно

Я петляю | B - параметрические усилители> file.txt. Так как я хочу ускорить скорость обработки, я использовал параллель-j+0 <a.txt для выполнения 20 заданий одновременно. a.txt содержит все команды: A...
20.09.2017
3
ответа

Помогите объяснить это перенаправление вывода удара

Этот сценарий был отправлен как ответ на Вопрос. И я пытаюсь разработать то, что продолжается. $ result= ({{ssh размещают состояние приложения> &3 3> &-; повторить "$?"} | {пока считанный-...
13.04.2017
3
ответа

Как я использую мишень для перенаправления к grep

У меня нет большого опыта использования мишени, таким образом, я надеюсь, что это не является очень простым. После просмотра одного из ответов на этот вопрос я столкнулся со странным beheviour с мишенью. Для меня для вывода...
13.04.2017
3
ответа

Как делают меня “кошка и следуют” за файлом?

Файл последовательно загружается wget. Если я начинаю распаковывать его с кошкой myfile.tar.bz2 | tar-xj, это может распаковать правильно или перестать работать с "Неожиданным EOF", в зависимости от того, что быстрее. Как к...
13.04.2017
3
ответа

обработка вывода команды линию за линией, не смешивая стандартный вход

Так, у меня есть проблема, очень похожая на Bash: Как считать одну строку за один раз из вывода команды?, я делаю: в то время как маршрут считывания; сделайте mplayer $path; сделанный <<(find-me-random-mp3s) или find-me-...
13.04.2017
3
ответа

Как я могу сказать echo/printf в Bash глотать управляющие коды, на основе условия?

У меня есть скрипт Bash, который запускается в интерактивном режиме и как задание крона. Когда выполнено в интерактивном режиме это производит окрашенный текст на терминале. Однако, когда выполнено в кроне это не имеет терминала и...
13.04.2017

Канал Unix соединяет дескрипторы файлов двух процессов. Канал создается с каналом POSIX () функция, объявленная в <unistd.h>. Оболочки обеспечивают создание канала между использованием процессов "|".

Каналы и потоки данных

Каждая команда или программа, выполненная оболочкой, имеют 3 потока данных, связанные с ним:

  1. стандартный вход (stdin, с дескриптором файла 0) – где команды получают свой вход от (по умолчанию, ввод с клавиатуры, обеспеченный терминалом).
  2. стандартный вывод (stdout, дескриптор файла 1) – куда команды отправляют свой вывод (по умолчанию, дисплей терминала).
  3. стандартная погрешность (stderr, дескриптор файла 2) – куда команды отправляют свои сообщения об ошибках и предупреждающие сообщения (по умолчанию, дисплей терминала).

Существуют способы соединить потоки между программами, и файлы назвали передачу по каналу и перенаправления.

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

Пример:

$ cat two_columns column1:cloth column2:strawberries column3:fish column4:chocolate column5:punch cards $ cat two_columns | awk -F: '{print $1}' column1 column2 column3 column4 column5 $ cat two_columns | awk -F: '{print "HAS: " $2}' HAS: cloth HAS: strawberries HAS: fish HAS: chocolate HAS: punch cards 

Дальнейшее чтение

Связанные теги

Полезные ссылки