Замена процесса с перенаправлением ввода

Если Вы действительно хотите хешировать использование данных подоболочка:

( dd_1 ; dd_2 ; dd_3 ) | md5sum

Иначе я предложил бы использовать ответ Hojat - хешируют его кусочный и делают что-то с теми "подхешами".

7
02.09.2014, 13:43
2 ответа

Вы были действительно близки:

tr "o" "a" < <(echo "Foo")

Подстановка <() создает дескриптор файла и просто вставляет путь к оболочке. Для понимания просто выполните:

<(echo blubb)

Вы увидите ошибку:

-bash: /dev/fd/63: Permission denied

Вот почему он просто вставляет / dev / fd / 63 в оболочку и / dev / fd / 63 не возбудимо, потому что это простая труба. В приведенном выше примере tr это echo "Foo" , которое записывает в конвейер, а через перенаправление ввода < это команда tr который читает из файлового дескриптора.

10
27.01.2020, 20:16

Я нашел Bash One-Liners объяснил серии очень полезно в понимании Подробнее о всем этом.

В частности, статья, связанная выше, - это все о входном перенаправление.

Чтобы решить конкретный пример выше:

> tr "o" "a" <<< $(echo "Foo")
Faa
3
27.01.2020, 20:16

Теги

Похожие вопросы