Pytania oznaczone «process-substitution»

Podstawianie procesu forma komunikacji między procesami, która umożliwia wejście lub wyjście polecenia na pojawienie się jako plik (na przykład: `<(cmd)` lub `> (cmd)`).

86
Zastąpienie procesu i rura

Zastanawiałem się, jak zrozumieć następujące kwestie: Przełożenie standardowej komendy na standardową kolejną jest potężną techniką. Ale co, jeśli chcesz przesłać standardowe sekwencje wielu poleceń? W tym miejscu pojawia się podstawienie procesu. Innymi słowy, czy podstawienie procesu może...

19
bash: jak propagować błędy w zastępowaniu procesów?

Chcę, aby moje skrypty powłoki kończyły się niepowodzeniem, ilekroć wykonanie polecenia nimi nie powiedzie się. Zazwyczaj robię to z: set -e set -o pipefail (zazwyczaj dodaję set -uteż) Chodzi o to, że żadne z powyższych nie działa z podstawieniem procesu. Ten kod wypisuje „ok” i kończy z kodem...

18
Jak emulować podstawianie procesów w Dash?

Za bashpomocą mogę zastąpić proces i traktować dane wyjściowe procesu tak, jakby to był plik zapisany na dysku: $ echo <(ls) /dev/fd/63 $ ls -lAhF <(ls) lr-x------ 1 root root 64 Sep 17 12:55 /dev/fd/63 -> pipe:[1652825] niestety, zastępowanie procesów nie jest obsługiwane w...

14
pliki grep z listy

Próbuję uruchomić grep na liście kilkuset plików: $ head -n 3 <(cat files.txt) admin.php ajax/accept.php ajax/add_note.php Jednak pomimo tego, że szukam ciągu, o którym wiem, że znajduje się w plikach, następujące pliki nie wyszukują plików: $ grep -i 'foo' <(cat files.txt) $ grep -i...

13
Bash: podstawienie procesu i standardowe wejście

Następująca linia jest oczywista: echo "bla" | foo | bar Ale czy te poniżej robią to samo? echo "bla" | bar <(foo) echo "bla" | bar < <(foo) Które z fooi barprzeczytałem „bla” ze standardowego wejścia i dlaczego? Mam na myśli, że oczywiście mogę po prostu kodować i sprawdzać, ale nie...

13
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 >(head -n1) | grep...