Re: [Script BASH] vérifier taille fichier avant de le déplacer avec mv

"napo978" <[email protected]>
Newsgroups gmane.linux.mandrake.expert.french
Message-ID <55146.172.168.100.1.1170082945.squirrel@localhost>
un petit truc comme ca devrait fonctionner... (ps teste)

PARTITION=/dev/hda2 #partition ou tu vx mettre tes films
REP_FILM=/home/films #nv repertoire des films

for i in *.*{avi|AVI|mkv|MKV}; do
film_size=`du $i`
free_size=`df --sync -P $PARTITION | awk 
/Available/'{next}//{split($0,a," "); print a[4] }' -`
[ $free_size -gt $film_size ] && mv $i $REP_FILM
done

la ligne avec awk peut etre remplacee par un truc de ce style : df -P
--sync /dev/hda2 | tail -n 1 |tr -s ' ' |c ' |cut -d ' ' -f 4

j espere que ca te vas...
B-

> Bonjour,
>
> Il y a une solution de paresseux ...
> 1) Tu crées un répertoire /home/user/tmp_avi
> 2) Tu déplaces tes .avi dans ce répertoire (pas de risque, tu restes sur
> la
> même partition)
> 3) Tu lances ton du sur ce répertoire
>
> Bon, c'est un peu goret, mais ça dépanne.
>
> Maintenant, pour faire une boucle,  ça va ressembler à :
> size=0
> for file in $(ls *.avi); do
> size+=$(df -shk | cut -f1)
> done
>
> Bon, là c'est sans filet, parce que je suis sous Win, et je ne connais pas
> le bash par coeur.
> Donc, je te suggère un man bash pour aller plus loin.
>
> Bonne continuation,
> J-L
> Le 28/01/07, linux_forever <[email protected]> a écrit :
>>
>> Bonjour,
>>
>> J'ai réalisé un rapide script (heu... une ligne de commande) qui me
>> permet
>> de
>> déplacer des fichiers d'un répertoire vers un autres:
>>
>> mv /home/user/*.avi /mnt/disque/avi/
>>
>> Cela me déplace donc tous mes fichiers.
>> Le problème que j'ai c'est que si le rep de destination est presque
>> plein,
>> il
>> me transfère tout de même une partie de mes fichiers, et je me retrouve
>> sur
>> le rep de destination avec des fichiers non valides car non complet....
>> Par
>> fois même de 0 octets, que seul le root peut supprimer....
>>
>> Le but serait donc de vérifier la place dispo, avant le déplacement de
>> chaque
>> fichier:
>>
>> Pour récupérer la place du disque courrant en ko, j'e fait ceci
>> du -shk | cut -f1 #place sur le rep courrant en kilo octets
>>
>> Mon problème serait donc de pouvoir boucler sur chaque fichier afin de
>> vérifier la taille....
>>
>> Merci de votre aide et bon dimanche!
>>
>>
>> ____________________________________________________
>> Want to buy your Pack or Services from Mandriva?
>> Go to http://store.mandriva.com
>> Join the Club : http://www.mandrivaclub.com
>> ____________________________________________________
>>
>>
>>
>
message-footer.txt (text/plain, 232 B)
____________________________________________________
Want to buy your Pack or Services from Mandriva? 
Go to http://store.mandriva.com
Join the Club : http://www.mandrivaclub.com
____________________________________________________
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.