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 26/10/2009, à 14:59

agilec

Déplacer des fichiers

Bonjour tout le monde,

Je débute avec les scripts Shell et j'ai besoin de votre aide:

En gros mon script doit:
1-déplacer des fichiers ayant une taille > X octets d'un répertoire A dans un répertoire B.
2- Supprimer les fichiers qui ont une taille = X octets du répertoire A.

Le répertoire A est connu,
Le répertoire B peut être modifié: je veux dire qu'il doit être une variable utilisé par le script.

Voila!!! si quelqu'un à une idée comment faire cela, n'hésitez pas, parceque je sais même pas d'ou il faut commencer!!

Un script comme exemple sera l'idéal.

Merci d'avance.

Hors ligne

#2 Le 26/10/2009, à 15:29

binary-temptation

Re : Déplacer des fichiers

oula .. sa fait longtemp que j'ai pu fait de bash mai ya rien de compliquer .... suffit de faire un petit tour sur google

http://www.google.fr/search?hl=fr&clien … =&aq=f&oq=

Hors ligne

#3 Le 26/10/2009, à 15:31

snaguber

Re : Déplacer des fichiers

man find ?

bon pour te donner quand même une piste, moi j'utilise souvent des trucs comme ça :

find . -type f -size +20000k -exec ls {} \;

là ça liste juste, tu peux mettre à ton goût en remplaçant le ls par un mv par ex.

sinon, concernant du scripting pur et dur, c'est pas tellement  <i>unbuntu related</i> : tu auras peut etre plus d'informations sur des forums plus spécialisés.


--
eeepc 1101ha & ubuntu karmic koala
je ne réponds pas au questions techniques par MP :
posez vos questions directement sur le forum

Hors ligne

#4 Le 26/10/2009, à 15:38

Hawkmoon

Re : Déplacer des fichiers

find dossierA -size +5M -print -exec mv {} "dossierB" \;

Déplace les fichiers de plus de 5megas vers DossierB.

find dossierA -type f -size 2M -exec rm -i {}  \;

Supprime les fichiers de 2m.


Tagazok à toi, mon frère !

Hors ligne

#5 Le 26/10/2009, à 16:25

agilec

Re : Déplacer des fichiers

merci pour le code.
je pense que j'ai fait une betise pour ça que ça marche pas:

voila le code:

##############################################################
#!/bin/sh

source="/home/porche/dossir_source"
dest="/home/porche/dossier_dest"

find  $source -size +100k -print exec mv {} "$dest" \;

find $source -type f -size 50k -exec rm -i {} \;

#############################################################

il me dit qu'il trouve pas le dossier!!!!!
j'ai lancé le script à partir du même repertoire ou se trouve les dossiers sources et dest.
Quelqu'un a une réponse????

Merci

Hors ligne

#6 Le 26/10/2009, à 21:48

nesthib

Re : Déplacer des fichiers

agilec a écrit :

source="/home/porche/dossier_source"
...
find  $source -size +100k -print -exec mv {} "$dest" \;

ce ne seraient pas de bêtes erreurs de frappe...

Dernière modification par nesthib (Le 26/10/2009, à 21:49)


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#7 Le 27/10/2009, à 10:23

Hawkmoon

Re : Déplacer des fichiers

et si tu as des espaces dans les noms des fichiers, il faut entourer les {} par des "".


Tagazok à toi, mon frère !

Hors ligne