@defect00
Идущий за мечтой.

Что означают эти опции в скрипте BASH?

Имеется следующий скрипт:
!/bin/bash

set -e

echo "Application backuping... "

BACKUPS_ROOT=/var/www/homework/backups/restore-backup_$(date '+%d-%m-%Y').sh

if [[ ! -d $BACKUPS_ROOT ]];
then
   echo "Creating backup directory..."
   mkdir -p "$BACKUPS_ROOT"
fi

# TODO: make database dump
touch dump.sql

gzip --best dump.sql
mv dump.sql.gz "$BACKUPS_ROOT"

zip -9 -qj uploads.zip backend/web/uploads/*
mv uploads.zip "$BACKUPS_ROOT"

echo "Backup is ready!"


Вопрос:
Что означает флаг -d , на 9й строке:
if [[ ! -d $BACKUPS_ROOT ]];
  • Вопрос задан
  • 660 просмотров
Решения вопроса 3
@pfg21
ex-турист
опция проверки существования директории.

:) тут именем команды является [
$ man [
*****
       -d FILE
              FILE exists and is a directory
****
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Простой ответ: проверяется, отсутствует ли директория $BACKUP_ROOT (которая и создаётся, если отсуствует)?

Правильный ответ: читайте документацию, в данном случае 'man test'.
Ответ написан
Комментировать
Lynn
@Lynn
nginx, js, css
https://linux.die.net/man/1/bash
см Conditional Expressions

-d file
True if file exists and is a directory.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы