Почему xargs пропускает первый аргумент при передаче в подоболочку?

Для отладки этой проблемы проверьте следующие вещи:

  1. Перепроверьте это разрешение Вашего .ssh каталог 700 и полномочия Вашего .ssh/authorized_keys файл должен быть 600.

  2. Проверьте журналы /var/secure/logs для того, чтобы знать причину соединения близко.

8
28.05.2015, 06:02
2 ответа

Bash] MAN страница говорит: « String Если параметр -c присутствует, то команды прочитаны из строки. Если появляются аргументы после строки, они назначены параметрам позиционирования, начиная с $ 0 "- ключ $ 0 ; Это означает, что имя команды должно быть первым аргументом.

seq 10 | xargs sh -c 'echo $@; echo $0' sh
1 2 3 4 5 6 7 8 9 10
sh
12
27.01.2020, 20:08

Почему Xargs пропускает первый аргумент при прохождении к подселению?

Это не так. Bash назначает первый аргумент $ 0:

$ seq 10 | xargs -n2 bash -c 'echo $0'
1
3
5
7
9

$ @ расширяется до $ 1 $ 2 $ 3 .... Следовательно, стоимость $ 0 не включен в $ @ .

10
27.01.2020, 20:08

Теги

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