Не удается установить OpenNTPD: «Невозможно найти подходящую FS в / proc / Counts, это установлено?» «Сценарий предварительного установки Возвращаемая ошибка Exit Status 1»

В,

cmd="bash -c 'echo hello'"
$cmd

Вы не выполняете команду bash -c 'echo hello' , вы выполняете команду $ cmd простая команда.

Этот некотируемый $ cmd означает вызов оператора split + glob. Здесь со значением по умолчанию $ IFS , содержимое $ cmd разбивается на bash , -c , "эхо и привет" . Итак, вы запускаете bash с этими 4 аргументами, это как если бы вы набрали:

bash -c "'echo" "hello'"

И в этом коде 'echo отсутствует заключительная кавычка ( привет ' аргумент входит в $ 0 этого встроенного скрипта).

Если вы хотите оценить содержимое $ cmd как код оболочки, это

eval "$cmd"

Итак:

cmd="bash -c 'echo hello'"
foo=$(eval "$cmd")
echo "$foo"

Хотя вы также можете использовать оператор split + glob по-другому:

cmd='bash,-c,echo hello'
IFS=, # split on comma
set -f # disable glob
foo=$($cmd)
echo "$foo"
0
18.11.2018, 15:32
2 ответа

Это сработало после запуска sudo apt-get purge ntp.

0
28.01.2020, 02:41

Пакет глючит. Вы можете установить его из бэкпортов .

apt install -t stretch-backports openntpd

Вы можете сообщить об ошибке в Debian:Как сообщить об ошибке в Debian с помощью reportbug .

Бэкпорты Debian

1
28.01.2020, 02:41

Теги

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