Qemu VM всегда падает с двойной свободой или коррупцией (! Prev): 0x5f68ea80 ***

Кроме того, команда set более экзотическая, чем вы думаете. Вы не используете команду set для установки переменных.

Вы знаете, что при вызове сценария оболочки с параметрами они назначаются $1, $2, $3 , ...; правильно? Ну, одна из вещей, которые выполняет команда set, - это установить $1, $2, $3, ... для текущей (интерактивной) оболочки. Так, например,

% set checkpoint="y" % echo "$checkpoint" (Nothing) % echo "Arg1 = '$1', arg2 = '$2', arg3 = '$3'" Arg1 = 'checkpoint=y', arg2 = '', arg3 = '' % set checkpoint = "y" % echo "$checkpoint" (Nothing) % echo "Arg1 = '$1', arg2 = '$2', arg3 = '$3'" Arg1 = 'checkpoint', arg2 = '=', arg3 = 'y'

, который вам не нужен.

И у вас другая проблема. Правильный синтаксис:

checkpoint="t"

Если вы говорите, что

$checkpoint="t"

и $checkpoint не установлены, эта команда сводится к

="t"

, которая ищет программу под названием =t (которая, вероятно, не существует). Аналогично,

$checkpoint = "t"

сводится к

= "t"

, который ищет программу под названием =. Хуже того, если $checkpoint уже установлен на "t", и вы говорите

$checkpoint="f"

, то это интерпретируется как

t="f"

, тем самым устанавливая переменную t (т. е. $t).

0
задан 26 December 2017 в 12:58

0 ответов

Другие вопросы по тегам:

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