210 votes

Bash - Créer récursivement des sous-répertoires inexistants

Je suis en train de créer un script de sauvegarde rapide qui videra certaines bases de données dans une structure de répertoires agréable / ordonnée. Le code que j'ai a fonctionne, mais il semble qu'il existe une meilleure façon de le faire. Aucune suggestion?

 [ -d "$BACKUP_DIR" ] || mkdir "$BACKUP_DIR"
[ -d "$BACKUP_DIR/$client" ] || mkdir "$BACKUP_DIR/$client"
[ -d "$BACKUP_DIR/$client/$year" ] || mkdir "$BACKUP_DIR/$client/$year"
[ -d "$BACKUP_DIR/$client/$year/$month" ] || mkdir "$BACKUP_DIR/$client/$year/$month"
[ -d "$BACKUP_DIR/$client/$year/$month/$day" ] || mkdir "$BACKUP_DIR/$client/$year/$month/$day"
 

472voto

bmargulies Points 49855

Euh, pourquoi ne pas utiliser mkdir -p ?

69voto

Jonathan Feinberg Points 24791
$ mkdir -p "$BACKUP_DIR/$client/$year/$month/$day"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X