Я не обязательно хочу получить ответ, но если бы кто-то мог указать мне на литературу или примеры. Я хотел бы понять это.
Когда я запускаю скрипт, я получаю сообщение об ошибке:
Синтаксическая ошибка рядом с неожиданным токеном
fi
Я пришел к выводу, что моя проблема заключается в моем ifзаявлении, сделав ifкомментарии к своим заявлениям и добавив, echo "$NAME"какие имена отображаются в /etc/.
Когда я делаю изменения, удаления #от ifи fiдобавить #к wc -c "$NAME", я получаю ошибку синтаксиса я перечислил выше. Я добавил ;между ]тем. Я также перешел thenна следующую строку без разрешения.
#!/bin/bash
for NAME in /etc/*
do
if [ -r "$NAME" -af "$NAME" ] then
wc -c "$NAME"
fi
done
-afдолжно делать?
-aявляется избыточным, потому что условие уже включено в -f. --- В любом случае несколько условий внутри [ ](эта команда также доступна как test) должны быть объединены с использованием логических операторов, таких как -a(и) или -o(или), но, как было предложено в ответе ниже, лучше использовать несколько команд [ ]( test) и присоединиться их используя операторы оболочки, такие как &&или ||.