У меня проблема noobish с bash-скриптом. Он обрабатывает строку как команду.
Сценарий
#!/bin/bash if ["$(pidof whatever)"] then echo "suicide" fi exit 0
Ошибка, которую я получаю при запуске: «[29999] команда не найдена».
Ты за помощь и время.
Вам нужен пробел между [ и $.[ - тестовая команда.
[
$
#!/bin/bash if [ $(pidof whatever) ] then echo "suicide" fi exit 0
[ - это команда.Как и любая другая команда, bash ожидает, что за командой будет следовать пробел, затем первый аргумент, затем другой пробел и т. Д. Вот правильный путь:
bash
if [ "$(pidof whatever)" ]; then ...
Похоже, проблема заключается в нехватке места между тестовыми операторами.Попробуйте:
#!/bin/bash if [ "$(pidof whatever)" ] then echo "suicide" fi exit 0
Надеюсь, это поможет!
Вам нужны пробелы между [и] например
if [ $(pidof whatever) ]
или
if [ "$(pidof whatever)" ]