Объяснение опций (флагов) для bash

Объяснение опций (флагов) для bash

Я часто вижу сценарии с использованиемпараметрыкак в if [ -f some_file ]проверяет, some_fileявляется ли файл. У меня очень смутное пониманиефлаги, но может ли кто-нибудь дать мне хорошее объяснение? Другие, например -p, -s, я понятия не имею, что это такое, и не смог найти хороших ресурсов по ним, так как одиночный поиск в Google не дает никаких хороших результатов.

решение1

Хотите верьте, хотите нет, но [на самом деле это еще одно название testкоманды.

Вы можете проверить manстраницу:

man test

testтакже является встроенной оболочкой в ​​большинстве оболочек (и имеет приоритет над внешней):

% type -a \[
[ is a shell builtin
[ is /usr/bin/[

% type -a test
test is a shell builtin
test is /usr/bin/test

В bashвы также можете увидеть help test.

решение2

Лучшим решением будет руководство по bash, да, самое простое man bash.

Чтобы найти точную запись в руководстве, выполните эту команду:

LESS=+/'^CONDITIONAL EXPRESSIONS' man bash

При работе внутри оболочки bash это также полезно:

help test

Связанный контент