Каковы различные варианты (-f,-d,-n) в ЕСЛИ удар statetements?

Я смотрю на '.profile' файл в моем корневом каталоге, и я вижу различные варианты, используемые с IF оператор:

if [ -n "$BASH_VERSION" ]; then...
...
if [ -f "$HOME/.bashrc" ]; then...
...
if [ -d "$HOME/bin" ] ; then...
...

Каковы значение и использование -n -f и -d опции здесь и обычно в других сценариях удара?

0
задан 5 March 2020 в 20:17

2 ответа

-f и -d тестовые опции операторов файла, а именно:

-f файл является регулярным файлом, не каталогом

-d файл является каталогом

-n опция оператора сравнения. Это возвращает "true", когда строка после опции not null.

0
ответ дан 17 March 2020 в 00:08

Все опции BASH для условных придаточных предложений могут быть найдены под разделом CONDITIONAL EXPRESSIONS из документации (man bash).

Заключение в кавычки его:

- d файл

Верный, если файл существует и является каталогом.

- f файл

Верный, если файл существует и является регулярным файлом.

- n строка

Верный, если длина строки является ненулевой.

2
ответ дан 17 March 2020 в 00:08

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

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