Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/10/2006, à 14:45

Xavos

Besoin d'un petit script pour classer des dossiers

Voilà Itunes m'as consolidé ma bibliothèque mp3.
(ya t-il une fonction de rangment physique sous linux ?)
J'ai donc dans mon dossier mp3, un dossier pour chaque artiste avec un dossier pour chaque album à l'interrieur de celui-ci. Le problème c'est que j'ai de nombreux mp3 d'un seul artiste. Ma bibliothèque est bien rangé mais j'ai une multitude dossier comportant uniquement 1 ou 2 chansons.

J'aurias besoin d'un script qui scan chaque dossier (et sous dossier pour les album) et que si un dossier ne comporte  moins de 3 fichier (hormis les fichier image : les jaquettes : jpg png)
il déplace ce dossier vers un autre prédéfinit !

Un peut compliquer. Mais j'en ai vraiment besoin pour faire le ménage....

Pk pas un script en python ?

Hors ligne

#2 Le 19/10/2006, à 14:48

cep

Re : Besoin d'un petit script pour classer des dossiers

Déplacé dans Développement - Programmation

Hors ligne

#3 Le 19/10/2006, à 19:26

Xavos

Re : Besoin d'un petit script pour classer des dossiers

ok

Hors ligne

#4 Le 19/10/2006, à 21:52

Balkoth

Re : Besoin d'un petit script pour classer des dossiers

Bonsoir,

il faudrait un peu plus de précisions sur ce que tu veux exactement.

J'ai fait une ébauche de script, qui va simplement afficher les déplacements de dossier au lieu de les effectuer.

#! /bin/bash

if [ $# -ne 1 ];
then
	echo "Usage : $0 dossier_destination"
	exit 0
fi

for artiste in $(ls -F | grep '/$')
do

	for album in $(ls -F $artiste | grep '/$')
	do
		# compte le nombre de fichiers non jpg et non png
		nb=$(ls $artiste$album | grep -v '.jpg$' | grep -v '.png$' | wc -l)
 
		if [ $nb -le 3 ];
		then
			echo "mv $artiste$album $1"
		fi
	done

done

Pour lancer : sh script.sh dossier_destination

Ce script déplace tous les dossiers avec 3 fichiers ou moins dans le dossier fourni en argument.
Si ça fait exactement ce que tu veux (ça m'étonnerait mais bon), enlève le echo et les "" à la ligne 19 (mv ...)

Ah oui, du fait de l'usage de for, si tu as des noms d'artiste ou d'album comportant des espaces, ça va faire une erreur 'Aucun fichier ou répertoire de ce type'.

Hors ligne

#5 Le 20/10/2006, à 16:23

Xavos

Re : Besoin d'un petit script pour classer des dossiers

oui à voir la syntaxe sa me semble être sa...

Par contre bien évidement mes nom de dossier contienne des espaces

Hors ligne