условное выражение и расширение

$ for f in * ; do mv "$f" Unix_"$f" ; done
1
22.12.2011, 10:16
2 ответа

rubixibuc является правильным, пробелы необходимы. Можно протестировать его с:

if [ "`whoami`" == "root" ]; then echo "To err is human...to really foul up requires the root password"; else echo "not telling any jokes"; fi
1
27.01.2020, 23:21

Я не означал отправлять ответ сразу же, но решил его после размышления об этом больше. Там нуждается к пространству или между [[или между [и следующий маркер.

вот то, как Вы протестировали бы его.

[[ a = a ]]

или

[ a = a ]

затем

echo $?
3
27.01.2020, 23:21
  • 1
    Это корректно. [ и [[ команды, и так же, как нужно поместить пространство после echo или ls, пространство должно следовать за ними. –  Ignacio Vazquez-Abrams 22.12.2011, 07:34
  • 2
    @IgnacioVazquez-Abrams Придеритесь к мелочам: [ команда (и поэтому если Вы не помещаете пространство после нее, Вы добираетесь [a=a] команда), [[ ключевое слово (но Вам все еще нужно пространство после него, иначе Вы добираетесь [[a=a]] команда). –  Gilles 'SO- stop being evil' 22.12.2011, 10:18

Теги

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