[uanog] Help with xargs substring, please
Andrey Blochintsev
bag-uanog at zurbagan.org
Thu Feb 11 13:31:35 EET 2021
Hi!
On Thu, Feb 11, 2021 at 10:16 +0200, Oleh Hrynchuk wrote:
> Доброго дня, шановн?? колеги.
>
>
> Маю ось результат виконання команди:
>
> oleh at localhost:~$ curl -sSL "https://localhost:5000/v2/_catalog" | jq -r
> '.repositories[]' | xargs -n1 -I {} bash -c 'echo "$@"' _ {}
> etx/for_audit
> etx/gsuite-fixes
> etx/master
>
...
> ?? не можу роз??братися ДЕТАЛЬНО що робить наступний pipe ц?????? команда:
>
> xargs -n1 -I {} bash -c 'echo "$@"' _ {}
>
> Тобто, я по одному (xargs -n1) беру аргументи з STDOUT попереднього pipe
> ??.... ?? що дал???
> Також який зм??ст несуть два к??нцев?? елементи: _ {} ?
>
> Сорр??, давно вже не залазив в так?? нюанси.. забув. ?? щось не гуглиться.
xargs -n1 -I {} command .... {}
выполняет для каждой строки из STDIN command в аргументах заменяя {} на строку. Образец "{}" специального смысла не имеет, можно брать другой.
Почему
xargs -n1 -I {} bash -c 'echo "$@"' _ {}
а не просто
xargs -n1 echo
или
cat
или вообще отрезать последнюю команду - могу только предположить. Видимо ожидается, что на входе есть что-то что нужно дать интерпретировать bash-у (хотя echo "$@" должно не особо разбирать аргументы команды, а только печатать; ?ньюансы с локалями?)
More information about the uanog
mailing list