Є деякі команди, які фільтрують або діють на вхід, а потім передають їх як вихід, але я думаю, що зазвичай stdout- але деякі команди просто приймуть stdinі робити все, що з ним робити, і нічого не вивести.
Я найбільше знайомий з ОС X, і тому є дві, які відразу ж приходять до тями, pbcopyі це pbpaste- засоби доступу до буфера обміну системи.
Так чи інакше, я знаю, що якщо я хочу взяти stdout і плюнути на вихід, щоб перейти до обох stdoutі файлів, то я можу використовувати teeкоманду. І я трохи знаю про це xargs, але не думаю, що це те, що я шукаю.
Я хочу знати, як я можу розділитись stdoutміж двома (або більше) командами. Наприклад:
cat file.txt | stdout-split -c1 pbcopy -c2 grep -i errors
Мабуть, є кращий приклад, ніж цей, але мені дуже цікаво знати, як я можу надіслати stdout до команди, яка не ретранслює його, і при цьому stdoutне перешкоджає "приглушенню" - я не запитую про те, catяк файл і grepчастину його та скопіюйте у буфер обміну - конкретні команди не так важливі.
Крім того - я не запитую, як надіслати це у файл і stdout- це може бути "дублікат" питання (вибачте), але я щось шукав і міг знайти лише подібні, які запитували про те, як розділити між stdout і файлом - і, здається, відповіді на ці запитання tee, які, на мою думку, не спрацюють для мене.
Нарешті, ви можете запитати "чому б просто не зробити pbcopy останньою справою в ланцюзі труб?" і моя відповідь 1) що робити, якщо я хочу його використовувати і все ще бачу вихід на консолі? 2) що робити, якщо я хочу використовувати дві команди, які не виводяться stdoutпісля того, як вони обробляють вхід?
О, і ще одне - я усвідомлюю, що міг би використати teeі названу трубу ( mkfifo), але сподівався на спосіб, як це можна зробити в прямому порядку, стисло, без попереднього налаштування :)