La structure de mes dossiers est la suivante :
ANNÉE - MOIS - JOUR - SOUS-DOSSIERS
Je veux compresser chaque sous-dossier des répertoires [DAY]. La solution de ici qui est :
for i in */; do zip -r "${i%/}.zip" "$i"; done
fonctionne bien tant que je le fais à partir d'un dossier [DAY]. Mais si je le change en :
for i in */*/; do zip -r "${i%/}.zip" "$i"; done
et exécuté à partir d'un dossier [MONTH], il fonctionne toujours, mais le problème est que le .zip contient maintenant un dossier parent supplémentaire pour chaque '/*' supplémentaire dans la commande lorsque je le décompresse.
Comment puis-je exécuter la commande à partir d'un dossier [YEAR] avec '/* /* /*' tout en m'assurant que le .zip ne contient que le sous-dossier de plus bas niveau lorsque je le décompose ?
0 votes
En quoi cela concerne-t-il Apple ? C'est probablement un meilleur sujet sur Unix/Linux .
0 votes
@Allan Le scripting Shell est le sujet ici :-)
1 votes
C'est vrai, mais il y a des différences subtiles dans les commandes si c'est une boîte Linux. Il suffit de regarder
grep
. C'est pourquoi je n'ai pas signalé la fermeture mais demandé des éclaircissements.