string-join - объединение строк с разделителем
Синтаксис
string join [-q | --quiet] SEP [STRING ...] string join0 [-q | --quiet] [STRING ...]
Описание
string join объединяет свои аргументы STRING в одну строку, разделенную SEP, которое может быть пустой строкой. Код возврата: 0, если выполнено хотя бы одно объединение, или 1 в противном случае. Если -n или --no-empty указаны, пустые строки не учитываются (например, string join -n + a b "" c будет расширено до a+b+c, а не a+b++c).
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.5/cmds/string-join.html