Bonjour,
je suis occupé a réaliser mes premiers scripts Bash
Soyez donc svp indulgent quand a la repetition de mon code.
Je bloque sur une fonction qui devra renommer les fichiers s'ils ne sont pas vides
et ce dans une boucle for.
voici le codeDonc pour chaque occurences contenant *.avi.* ,un test est fait pour voir si le fichier est vide,si au moins l' un d'entre eux est vide il quitte , car cela entrenerait un probleme d'avoir un fichier vide pour le reste du script.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #!/bin/bash x=1 for file in *.avi* ;do if [[ ! -s "$file" ]]; then echo " fichier vide verifier vos sources" exit 1 elif [[ -s "file" ]]; then mv "$file" /*${file/%[par2][PAR2]/repa}=>substitution de test fi mv $file pearlharbor.$x ((x+=1)) done
s'il ne l'est pas il continu.
Je trouve ce code tres sale un niveau des MV et cela me conviens pas .
Ce que je voudrais est qu'il renomme les fichiers avi en $monchoix.$x
seulement avi peut avoir plusieur place dans le fichier et pas seulement en suffix :
exemple => test.avi , test.avi.ancienfichier test.avi.001 etc .....
j'avais pensé a $(ls -C | grep blablabla) mais j'entend souvent dans les forum que ls n'est pas fait pour le script et est tres deconseillé.
J'aurais donc besoin d'un peu d'éclaircissement .
Merci
Partager