tee
может перенаправить стандартный ввод данных в стандартный вывод и файл.
echo Hello, World! | tee greeting.txt
Приведенная выше команда отобразит приветствие на экране терминала и сохранит его в содержимом greeting.txt
файла, создав файл, если его нет с таким именем.
Также есть -a
переключатель для tee
добавления в существующий файл вместо перезаписи.
Есть ли удобный способ перенаправить ввод по каналу в команду и стандартный вывод вместо файла?
Я пытаюсь создать скрипт-обертку, buku
чтобы скопировать в основной выбор URL-адрес закладки, указанный ее индексным номером.
# bukuc:
#!/bin/sh
url=$(buku -f 1 -p $1 | cut -f 2) # NUMBER : URL
echo $url # DISPLAY
echo $url | xsel # PRIMARY SELECTION
Здесь я использую echo
два раза, сначала для отображения на терминале, а затем для сохранения в основной выбор (буфер обмена).
Я представляю что-то echo $url | teeC xsel
или ярлык для отображения вывода перед передачей следующей команде (связывание команд), что позволило бы мне объединить всю команду в одну строку без необходимости сохранять результат в переменной следующим образом:
buku -f 1 -p $1 | cut -f 2 | teeC xsel
Я также могу использовать его urlview
для просмотра, выбора и открытия с помощью $BROWSER
следующего:
bukuc 10-20 | urlview
info tee
упоминает о замене процесса и выводе тройника в программу ...
tee /dev/tty
илиtty0
(точно не помню ... я в пути)