Только mkdir, если он не существует [дубликат]
этот вопрос уже есть ответ здесь:
- как mkdir только если dir еще не существует? 13 ответов
в моем сценарии bash я делаю:
mkdir product;
когда я запускаю скрипт несколько раз, я получаю:
mkdir: product: File exists
в консоли.
поэтому я ищу только запустить mkdir, если реж не существует. Это возможно?
5 ответов:
if [ ! -d directory ]; then mkdir directory fi
или
mkdir -p directory
-p
обеспечивает создание, еслиdirectory
не существует
использовать команду mkdir по
-p
вариант, но обратите внимание, что он имеет и другой эффект.-p Create intermediate directories as required. If this option is not specified, the full path prefix of each oper- and must already exist. On the other hand, with this option specified, no error will be reported if a directory given as an operand already exists. Intermediate directories are created with permission bits of rwxrwxrwx (0777) as modified by the current umask, plus write and search permission for the owner.
mkdir -p
- p, --родители нет ошибки, если она существует, сделайте родительские каталоги по мере необходимости
попробуйте использовать это:-
mkdir -p dir;
Примечание: это также создаст все промежуточные каталоги не существуют; например,
проверить mkdir-p
или попробуйте это:-
if [[ ! -e $dir ]]; then mkdir $dir elif [[ ! -d $dir ]]; then echo "$Message" 1>&2 fi