Pytania otagowane jako pipe

Potok Unix łączy deskryptory plików dwóch procesów. Potok jest tworzony za pomocą funkcji potoku POSIX zadeklarowanej w <unistd.h>. Powłoki umożliwiają tworzenie potoków między procesami za pomocą „|”.

3
Bezpośrednie wyjście do potoku i standardowego wyjścia
Zastanawiałem się, czy istnieje sposób na przesłanie wyniku polecenia i skierowanie go do standardowego wyjścia. Na przykład fortunedrukuje plik cookie fortuny, a także kopiuje go do schowka: $ fortune | tee &gt;(?stdout?) | pbcopy "...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and the Ugly)." (By …
14 bash  pipe  stdout  tee 

5
Jak mogę filtrować zawartość pliku tar, tworząc kolejny plik tar w potoku?
Rozważ pojedynczy plik tar z zewnętrznego systemu, który zawiera niektóre katalogi z różnymi atrybutami, które chcę zachować, takie jak uprawnienia, czasy itp. Jak mogę łatwo wziąć podzbiór tych plików jako zwykły użytkownik (nie root)? Szukasz czegoś takiego: tar -f some.tar.gz --subset subdir/ | ssh remote@system tar xvz Ważne jest również, …
13 pipe  tar 

4
Jak używać sed do manipulowania ciągłym przesyłaniem strumieniowym?
Przygotowuję prezentację dla nietechnicznych odbiorców. Mam program działający w trybie bash, który generuje ciągły strumień wartości, z których kilka jest ważnych. Chciałbym podkreślić ważne wyniki podczas ich wyświetlania, aby publiczność mogła dowiedzieć się o ich częstotliwości. Problem polega na tym, że nie mogę seduruchomić działającego strumienia. Działa dobrze, jeśli umieszczę …

4
potok, {lista; } działa tylko z niektórymi programami
Potrzebujesz wyjaśnień od zaawansowanych użytkowników na temat takiego nieprzewidzianego zachowania: ps -eF | { head -n 1;grep worker; } UID PID PPID C SZ RSS PSR STIME TTY TIME CMD root 441 2 0 0 0 2 paź15 ? 00:00:00 [kworker/2:1H] wszystko wygląda dobrze, podczas gdy ls -la / | …
13 shell  pipe 

3
Jak używać tee do przekierowania na grep
Nie mam dużego doświadczenia w używaniu tee, więc mam nadzieję, że nie jest to bardzo podstawowe. Po obejrzeniu jednej z odpowiedzi na to pytanie natknąłem się na dziwne zachowanie tee. Aby wygenerować pierwszy wiersz i znaleziony wiersz, mogę użyć tego: ps aux | tee &gt;(head -n1) | grep syslog USER …


2
komunikacja między wieloma procesami
Mam skrypt bash, który uruchamia funkcję manager () jako osobny proces dla x-razy. Jak można przekazywać wiadomości do wszystkich procesów menedżera () z poziomu skryptu? Czytałem o anonimowych potokach, ale nie mam pojęcia, jak udostępniać im wiadomości. Próbowałem to zrobić z nazwanymi potokami, ale wygląda na to, że musiałbym utworzyć …

2
Przesyłanie danych wyjściowych z programu segfault
Mam skrypt, który wywołuje program (w szczególności ttf2afmczęść tetex 3.0), który czasami segfuje, a czasem nie. Informacje, których potrzebuję, są zawsze drukowane, zanim ulegną segregacji, ale trudno mi jest powstrzymać przekierowanie potoku przed awarią i nie wysyłać niczego do potoku, gdy program zawiedzie. Próbowałem przekierować przez FIFO, nawiasować proces za …

2
Sparametryzuj powiązane połączenia z programem narzędziowym w Bash
Mam program UNIX czarnej skrzynki używany w powłoce Bash, która odczytuje kolumny danych ze standardowego wejścia, przetwarza je (stosując efekt wygładzania), a następnie wysyła do standardowego wyjścia. Używam go przez potoki UNIX, jak generate | smooth | plot Aby uzyskać bardziej wygładzanie, mogę powtórzyć wygładzanie, aby można je było wywołać …

1
Skąd program wie, czy stdout jest podłączony do terminala lub rury?
Mam problem z debugowaniem programu segfault, ponieważ potrzebuję wyjścia bezpośrednio przed segfault, ale tracę go, jeśli przesyłam dane wyjściowe do pliku. Zgodnie z tą odpowiedzią: /unix//a/17339/22615 dzieje się tak , ponieważ bufor wyjściowy programu jest opróżniany natychmiast po podłączeniu do terminala, ale tylko w niektórych punktach po podłączeniu do potoku. …
12 terminal  pipe 

2
Użycie jq w łańcuchu rur nie daje żadnych wyników
Kwestia jqpotrzeby jawnego filtrowania podczas przekierowywania danych wyjściowych jest omawiana w Internecie. Ale nie jestem w stanie przekierować danych wyjściowych, jeśli jqjest częścią łańcucha potoków, nawet jeśli używany jest filtr jawny. Rozważać: touch in.txt tail -f in.txt | jq '.f1' # in a different terminal: echo '{"f1":1,"f2":2}' &gt;&gt; in.txt echo …

1
Dziwne symbole na ekranie podczas korzystania z grep?
Masz pojęcie, co może być tego przyczyną? Bez użycia grep wyświetlane są tylko kody ISO i puste miejsce. Użyte oprogramowanie Komenda: ./trans --id --input /path/to/txt | grep ISO | grep [a-z] root@box /test # alias grep alias grep='grep --color=auto' root@box /test # type grep grep is aliased to `grep --color=auto' …

5
Dlaczego nie mogę potokować `pwd`, by` open` na macOS?
Jest to specyficzne dla systemu macOS, ale wydaje się zbyt unikatowe, aby przejść do społeczności Ask Different . W Terminalu mogę pwdskopiować wynik, a następnie wpisać openi wkleić wynik, a folder otworzy się w Finderze, ale pwd | open drukuje dokumentację pomocy dla open. Dlaczego pipowanie nie działa, a wklejanie?
12 osx  pipe 

3
SSH: Zapewnij dodatkowe „rury” FDS oprócz stdin, stdout, stderr
W przypadku podłączenia do komputera o SSH, zwykle trzy „rury” są między gościem a gospodarzem, dla stdin, stdouti stderr. Czy jest dostępna opcja wiersza polecenia do tworzenia dalej dla dodatkowych deskryptorów plików ( 3i kolejnych )? Na przykład chciałbym to zrobić ssh --forwardfd=10:3 remotehost 'echo test &gt;&amp;3' który wypisuje „test” …

4
Dlaczego dane wyjściowe zasad apt-cache nie są przesyłane strumieniowo?
Nie mogę zrozumieć dlaczego $ apt-cache policy foo N: Unable to locate package foo ale $ apt-cache policy foo 2&gt;&amp;1 | grep . jest pusty. Gdzie w tym drugim wezwaniu robię błędne założenie? Oryginalne zadanie: apt-cache policyprawdopodobnie przetwarzam dane wyjściowe :-) UPD : fooużyte w moim przykładzie można zastąpić dowolną …
12 shell  apt  pipe 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.