Графика установки Kali linux испорчена [дубликат]

psshtiene la siguiente sinopsis de uso:

pssh [options] command...

Es decir, no cite el comando que desea ejecutar en los hosts remotos (o tratará todo el comando citado como el nombre del comando ). Además, las cadenas de comillas simples que son estáticas, como la expresión sed.

Sugerencia:

pssh -h /root/listofservers -l root -A sed 's#\(Defaults.*\)#\1:/etc/bla/foo/#' filename

También he cambiado ?a #ya que ?es un carácter de expresión regular. No hará una diferencia aquí, pero me confundió brevemente cuando traté de analizar la expresión.

0
14.01.2019, 03:49
1 ответ

Попробуйте изменить все +1после exprна + 1.

Без пробела exprвернет ошибку, а $tempбудет пустым. Если $tempпусто, то -ltбудет сравнивать пробел с числом, поэтому и появляется ошибка. Вот один лайнер, который воспроизводит проблему:

t=0;t=`expr $t +1`;[ $t -lt 25 ]

Вывод (в STDERR):

expr: syntax error
bash: [: -lt: unary operator expected

Еще лучше, измените весь код, который использует внешнюю утилиту expr, чтобы использовать собственное внутреннее арифметическое расширение оболочки. Вот такой код:

temp=`expr $temp +1`

...следует изменить на:

temp=$(($temp + 1))

Или, в bash, всю строку можно заменить только:

((temp++))
9
28.01.2020, 02:13

Теги

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