psub - выполнение подстановки процесса
Синопсис
COMMAND1 ( COMMAND2 | psub [-F | --fifo] [-f | --file] [(-s | --suffix) SUFFIX] )
Описание
Некоторые оболочки (например, ksh, bash) имеют синтаксис, который представляет собой смесь подстановки команд и конвейера, называемый подстановкой процесса. Он используется для отправки вывода команды вызывающей команде, так же как и подстановка команд, но с той разницей, что вывод не отправляется через аргументы командной строки, а через именованную трубу, а имя именованной трубы отправляется в качестве аргумента вызывающей программе. psub в сочетании с обычной подстановкой команд обеспечивает ту же функциональность.
Доступны следующие опции:
- -f или --file
-
Использовать обычный файл вместо именованной трубы для связи с вызывающим процессом. Это приведет к
psubзначительно более медленной работе при больших объёмах данных, но имеет преимущество, что процесс чтения может осуществлять поиск в потоке. Это значение по умолчанию. - -F или --fifo
-
Использовать именованную трубу вместо файла. Вы должны использовать это только в том случае, если команда генерирует не более 8 КБ вывода. Ограничение на количество данных, которые может буферизовать FIFO, варьируется в зависимости от ОС, но обычно составляет 8 КБ, 16 КБ или 64 КБ. Если вы используете этот параметр, и команда слева от конвейера psub производит больший объем вывода, вероятно, произойдёт тупик.
- -s или --suffix SUFFIX
-
Добавить SUFFIX к имени файла.
- -h или --help
-
Отображает справку по использованию этой команды.
Пример
diff (sort a.txt | psub) (sort b.txt | psub) # shows the difference between the sorted versions of files ``a.txt`` and ``b.txt``. source-highlight -f esc (cpp main.c | psub -f -s .c) # highlights ``main.c`` after preprocessing as a C source.
© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.4/cmds/psub.html