Вопросы с тегом «pipe»

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

3
Как скачать архив и распаковать его без сохранения архива на диск?
Я хотел бы скачать и распаковать архив по заданному каталогу. Вот как я это делал до сих пор: wget http://downloads.mysql.com/source/dbt2-0.37.50.3.tar.gz tar zxf dbt2-0.37.50.3.tar.gz mv dbt2-0.37.50.3 dbt2 Вместо этого я хотел бы скачать и распаковать архив на лету , без записи tar.gzна диск. Я думаю , что это возможно, перенаправив вывод …
62 shell  pipe  tar  wget 

5
Для чего используется команда mknod?
Я только начал использовать Ubuntu в качестве основной ОС и хотел узнать о вещах, которые мне не следует делать, и узнавать о плохих вещах, которые люди делали в прошлом. Я наткнулся на это письмо об ужасных историях, которые администраторы UNIX и Linux делали в своей собственной системе, когда они были …

3
Как использовать команду watch с конвейерной цепочкой команд / программ
Я обычно watchпользуюсь утилитой linux для просмотра вывода команды несколько раз каждые n секунд, как вwatch df -h /some_volume/ Но мне кажется, что я не могу использовать watchс такой последовательной командой, как: $ watch ls -ltr|tail -n 1 Если я делаю это, watchдействительно смотрю, ls -ltrи вывод передается, tail -n …
52 linux  bash  pipe  watch 

4
Каковы преимущества использования именованного канала над неназванным?
Я просматривал набор вопросов для интервью, задаваемых администратором Unix; Я нашел тему под названием "именованная труба". Я погуглил тему; в какой-то степени я смог понять это: - именованные каналы || ФИФО Но все же я чувствую, что мне не хватает знаний о том, когда использовать этот конкретный тип трубы. Существуют …
51 pipe 

4
Должен ли я заботиться о ненужных кошках?
Многие утилиты командной строки могут получать свои данные либо из канала, либо в качестве аргумента имени файла. Для длинных сценариев оболочки, я считаю, что начало цепочки с помощью catделает ее более читаемой, особенно если первая команда будет нуждаться в многострочных аргументах. сравнить sed s/bla/blaha/ data \ | grep blah \ …

2
Bash: Как прочитать одну строку за раз из вывода команды?
Я пытаюсь прочитать вывод команды в Bash, используя while loop. while read -r line do echo "$line" done &lt;&lt;&lt; $(find . -type f) На выходе я получил ranveer@ranveer:~/tmp$ bash test.sh ./test.py ./test1.py ./out1 ./test.sh ./out ./out2 ./hello ranveer@ranveer:~/tmp$ После этого я попробовал $(find . -type f) | while read -r …
49 bash  shell  find  pipe 

10
Как проверить, является ли канал пустым, и запустить команду для данных, если это не так?
Я передал строку в скрипте bash и хочу проверить, есть ли в канале данные, прежде чем передавать их в программу. Поиск, который я нашел, test -t 0но он не работает здесь. Всегда возвращает ложь. Так как быть уверенным, что в трубе есть данные? Пример: echo "string" | [ -t 0 …
42 bash  shell  pipe 

2
Почему подстановка процесса приводит к файлу / dev / fd / 63, представляющему собой канал?
Я пытаюсь понять именованные каналы в контексте этого конкретного примера. Я печатаю &lt;(ls -l)в своем терминале и получаю вывод как bash: /dev/fd/63: Permission denied. Если я наберу cat &lt;(ls -l), я мог видеть содержимое каталога. Если я заменить catс echo, я думаю , что я получаю имя терминала (или это?). …

7
Условный конвейер
Скажем, у меня есть следующий конвейер: cmd1 &lt; input.txt |\ cmd2 |\ cmd4 |\ cmd5 |\ cmd6 |\ (...) |\ cmdN &gt; result.txt При определенных условиях я хотел бы добавить cmd3между cmd2и cmd4. Есть ли способ создать некий условный конвейер без сохранения результата cmd2 во временный файл? Я хотел бы …
39 pipe 

3
Трубопроводные команды после харга по трубопроводу
HP-UX ***** B.11.23 U ia64 **** безлимитная лицензия find . -type d -name *log* | xargs ls -la дает мне имена каталогов (те, которые содержатся logв имени каталога), за которыми следуют все файлы в этом каталоге. Каталоги /var/opt/SID/application_a/log/, /var/opt/SID/application_b/log/, /var/opt/SID/application_c/log/и так далее содержат файлы журналов. Я хочу, чтобы команда указала …
38 shell  find  pipe  xargs 

6
Как заставить команду думать, что ее вывод идет в терминал
При наличии команды, которая меняет свое поведение, когда ее вывод поступает на терминал (например, производит цветной вывод), как этот вывод может быть перенаправлен в конвейер при сохранении измененного поведения? Для этого должна быть полезность, о которой я не знаю. Некоторые команды, например grep --color=always, имеют флажки параметров для принудительного поведения, …
38 shell  pipe  utilities  stdout  pty 

3
Как конвейеры ограничивают использование памяти?
Брайан Керниган объясняет в этом видео, что ранние исследования Bell Labs по отношению к небольшим языкам / программам основаны на ограничении памяти Большая машина была бы 64 кбайт - K, а не M или G - и это означало, что любая отдельная программа не могла быть очень большой, и поэтому …
36 pipe  history 

4
Почему «хвост-ф ... | хвост »не в состоянии произвести какой-либо вывод?
Почему следующая команда не выдает никаких результатов? $ tail -f /etc/passwd | tail Прочитав о буферизации , я попробовал следующее безрезультатно: $ tail -f /etc/passwd | stdbuf -oL tail Обратите внимание, что следующее действительно производит вывод: $ tail /etc/passwd | tail Так же это: $ tail -f /etc/passwd | head …
36 pipe  tail 

2
Куда переходят мои управляющие коды ANSI, когда я передаю канал другому процессу? Могу ли я оставить их?
Иногда я хочу передать вывод с цветовой кодировкой процесса, например. grep ... но когда я передаю его другому процессу, например. Сед, цветовые коды потеряны ... Есть ли какой-то способ сохранить эти коды без изменений? Вот пример, который теряет цветной вывод: echo barney | grep barney | sed -n 1,$\ p

2
/ proc / PID / fd / X номер ссылки
В Linux /proc/PID/fd/Xссылки на файловые дескрипторы, представляющие собой каналы или сокеты, имеют номер, например: l-wx------ 1 user user 64 Mar 24 00:05 1 -&gt; pipe:[6839] l-wx------ 1 user user 64 Mar 24 00:05 2 -&gt; pipe:[6839] lrwx------ 1 user user 64 Mar 24 00:05 3 -&gt; socket:[3142925] lrwx------ 1 user …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.