string-join0 - объединение строк с нулевыми байтами
Синопсис
string join [-q | --quiet] SEP [STRING ...] string join0 [-q | --quiet] [STRING ...]
Описание
string join объединяет свои аргументы STRING в одну строку, разделенную SEP, которая может быть пустой строкой. Код выхода: 0, если было выполнено хотя бы одно объединение, или 1 в противном случае.
string join0 объединяет свои аргументы STRING в одну строку, разделенную нулевым байтом (NUL), и добавляет заключительный NUL. Это наиболее полезно в сочетании с инструментами, которые принимают входные данные, ограниченные нулевым байтом, такими как sort -z. Код выхода: 0, если было выполнено хотя бы одно объединение, или 1 в противном случае.
Поскольку Unix использует NUL в качестве терминатора строки, передача вывода string join0 в качестве аргумента команде (через подстановку команды) фактически не сработает. Fish передаст правильные байты, но команда не сможет определить, где заканчивается аргумент. Это ограничение передачи аргументов в Unix.
Примеры
>_ seq 3 | string join ... 1...2...3 # Give a list of NUL-separated filenames to du (this is a GNU extension) >_ string join0 file1 file2 file\nwith\nmultiple\nlines | du --files0-from=- # Just put the strings together without a separator >_ string join '' a b c abc
© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.4/cmds/string-join0.html