Запитання з тегом «pipe»

Труба Unix з'єднує дескриптори файлів двох процесів. Труба створюється за допомогою функції POSIX pipe (), оголошеної в <unistd.h>. Оболонки забезпечують створення труби між процесами, використовуючи "|".

3
Як я можу переспрямувати вихідний час та командний вихід на ту саму трубу?
Припустимо, у мене є двійковий під назвою foo. Якщо я хочу перенаправити результат fooна якийсь інший процес bar, я можу написати ./foo | bar. З іншого боку, якби я хотів timefoo і перенаправляв висновок, timeя міг би написати time (./foo) | bar,. Моє запитання полягає в тому, як я можу …

1
знайти та rsync?
Я хочу мати змогу шукати файли протягом 14 днів і більше 10 тис., А потім rsync тих знайдених файлів за призначенням. Чи є спосіб поєднати ці дві команди? find ./ -mtime +14 -size +10k rsync --remove-sent-files -avz /src /dest
24 bash  shell  find  pipe  rsync 

6
Як змусити програми python вести себе як належні інструменти Unix?
У мене є кілька сценаріїв Python, і я працюю над їх перезаписом. У мене однакова проблема з усіма ними. Мені не очевидно, як писати програми, щоб вони поводилися як належні інструменти Unix. Тому що це $ cat characters | progname і це $ progname characters повинні давати однаковий вихід. Найближче, …

3
Трубопроводи STDERR проти STDOUT
Відповідно до " Linux: Повна довідка 6-го видання " (стор. 44), ви можете передавати лише STDERR, використовуючи |&amp;символи перенаправлення. Я написав досить простий сценарій, щоб перевірити це: #!/bin/bash echo "Normal Text." echo "Error Text." &gt;&amp;2 Я запускаю цей сценарій так: ./script.sh |&amp; sed 's:^:\t:' Імовірно, відступними будуть лише рядки, надруковані …

1
Передача пошукового терміну (не ім'я файлу) до файлу grep
Я хочу вибрати з файлу певні рядки, що містять задане число. Файл, який я хочу шукати, називається os_clusters/piRNA_clusters.bed. awk '{if (a[$0]++ == 0) {split($0,b,"."); ;split(b[1],c,"r"); print c[3]}};' test_non_enriched | xargs grep {} os_clusters/piRNA_clusters.bed Перша частина, перш ніж труба, працює - вона створює такі пошукові терміни, як 8707, 8824 тощо. Однак …
23 bash  grep  pipe 

4
Чи розумні утиліти Linux під час виконання трубних команд?
Я просто виконував кілька команд у терміналі, і мені стало цікаво, чи Unix / Linux приймає ярлики під час запуску трубних команд? Наприклад, скажімо, у мене є файл з мільйоном рядків, перші 10 з яких містять hello world. Якщо ви запускаєте команду, grep "hello world" file | headчи зупиняється перша …

8
Як передавати вихід з одного процесу на інший, але виконувати лише якщо перший має вихід?
Як я можу переписати цю команду лише на електронну пошту, якщо є вихід з mailq | grep? mailq | egrep 'rejected|refused' -A 5 -B 5 | mail -s 'dd' email@email Це можливо навіть на одній лінії? Див. Перевірка, чи труба порожня, та запустіть команду над даними, якщо це не більш …
23 shell  pipe 

5
Стиснення потокового потоку, яке не переливається на апаратні ресурси?
У мене є 200 ГБ вільного місця на диску, 16 ГБ оперативної пам’яті (з яких ~ 1 ГБ займає робочий стіл і ядро) і 6 ГБ свопу. У мене зовнішній SSD ємністю 240 Гб, 70 ГБ використано 1, а решта - безкоштовна, яку мені потрібно створити для резервного копіювання на …
23 pipe  dd  compression  gzip 

4
Яка різниця між `curl | sh` і `sh -c“ $ (згортка) ”`?
Це питання було перенесено з помилки сервера, оскільки на нього можна відповісти на Unix &amp; Linux Stack Exchange. Мігрували 2 роки тому . Один простий спосіб установки Docker (наприклад): curl -sSL https://get.docker.com/ | sh Однак я також бачив деякі, які виглядають так (на прикладі Докера): sh -c "$(curl -sSL https://get.docker.com/)" …

2
Труби, як надходять дані в трубопровід?
Я не розумію, як дані надходять у конвеєр, і сподіваюся, що хтось міг би пояснити, що там відбувається. Я думав, що конвеєр команд обробляє файли (текст, масиви рядків) по черзі. (Якщо кожна команда сама працює рядок.) Кожен рядок тексту проходить через конвеєр, команди не чекають, коли попередній закінчить обробку всього …


2
менше file1 file2 | кішка - чому це працює?
Коли я запускаю, less file1 file2я отримую обидва файли, що відображаються у "перегляді менш буфера", але less file1 file2 | catдрукує вміст обох файлів, доданих до stdout. Звідки менше знати, чи повинен він показувати "менше переглядача буфера" або виробляти вихід для stdout для наступної команди? Який механізм використовується для цього?
21 pipe  cat  less 

7
Випадково використано переадресацію виходу> замість труби |
Місяць тому я написав сценарій Python, щоб зіставити MAC та IP адреси від stdin. І два дні тому я згадав це і використовував для фільтрування виводу, tcpdumpале він пішов не так через помилку друку. Я набрав tcpdump -ne &gt; ./mac_ip.py а вихід - нічого. Але вихід повинен бути "Невідомим", якщо …

4
Чи можна перенаправити висновок команди на кілька команд?
Наскільки я знаю, я можу використовувати команду tee, щоб розділити стандартний вихід на екран та інші файли: command -option1 -option2 argument | tee file1 file2 file3 Чи можна перенаправити вихід на команди замість файлів за допомогою трійника, щоб я теоретично міг створити ланцюжок команд?
21 command-line  pipe  tee 

3
Немає кольорового виводу менше для команди ls
Якщо я запускаю, lsя отримую кольоровий вихід, який мені здається досить зручним для швидкого огляду виду файлу. Коли я намагаюся передати це lessрівномірно -rі -Rпрапорами, забарвлення завжди втрачається. Я використовую zshверсію 5.0.7. Будь-які ідеї? Спасибі. редагувати: Я в ОС X.
21 osx  pipe  ls  colors  less 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.