Переменная экспорта подоболочки bash [закрыто]

Это потому, что $ @ - это массив, а цитирование массивов имеет другие правила:

  • "$ {array [@]}" или "$ @" расширяется до элементов массива
  • «$ {array [*]}» или «$ *» расширяется до элементов массива, к которым присоединяется первый символ из $ IFS переменная.

Попробуйте использовать несколько аргументов, некоторые из них содержат пробелы:

./foo.sh 'one two' three
1
26.02.2017, 14:12
1 ответ

Переменные не раскрываются в одинарных кавычках.

sudo -S bash -c '(printf '%s' "OTHER_PASSWORD" | ... luksFormat $storage -)'
                                                                ~~~~~~~~

Обратите внимание, что кавычки вокруг %s на самом деле означают, что строка не заключена в кавычки (как показывает подсветка синтаксиса), но, к счастью, это не имеет значения, поскольку %s не имеет специального значения.

1
27.01.2020, 23:46

Теги

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