Réponses:
Bien sûr, exécutez ceci dans le dossier musique où se trouvent les dossiers artistes:
for artist in */; do
for folder in "1. Albums" "2. EP" "3. Singles" "4. Live"; do
mkdir "$artist/$folder"
done
done
Vous pouvez l'exécuter sur votre CLI, ou vous pouvez en faire un script shell en ajoutant #!/bin/sh
comme première ligne et en l'enregistrant dans un fichier. N'oubliez pas de rendre le fichier exécutable.
Quant à ce qu'il fait: il itère sur tous les répertoires ( */
) du répertoire actuel, puis pour chacun de ces répertoires, itère sur le sous-dossier souhaité (le second for
), puis crée le sous-dossier souhaité (relatif).
Vous voudrez peut-être mettre vos accolades {bouclés} pour celui-ci
Pour cet argument, nous ferons semblant ./music n'existe pas
Dans votre répertoire de base pour ./music, nous utiliserons la commande -p pour créer des sous-répertoires si nécessaire et les accolades seront utilisées pour créer un petit tableau
La commande -p
est l'abréviation de parent, s'il est plus facile de se souvenir que vous pouvez utiliser à la --parent
place
mkdir -p ./music/{"1. Albums","2. EP","3. Singles","4. Live"}
Si vous souhaitez jouer avec cela, vous pouvez, par exemple,
mkdir -p ./folder/prefix{a{1/only,2,3},b,c}suffix/more{z,y,x}
Vous avez des expressions imbriquées, vous pouvez insérer les accolades au milieu d'une chaîne et vous pouvez également autoriser le sous-répertoire à suivre, et vous pouvez être spécifique avec vos sous-répertoires pour un tableau particulier
Je vous suggère de créer un fichier quelque part où vous pouvez créer vos propres modèles avec de telles commandes et leur donner des descriptions
Visitez cette page pour plus d'informations https://www.linuxjournal.com/content/bash-brace-expansion et https://www.linux.com/tutorials/all-about-curly-braces-bash/
music
, donc l'argument correct mkdir
serait./music/*/{"1. Albums","2. EP","3. Singles","4. Live"}
-p
est la forme abrégée de --parent
.