Contenu | Rechercher | Menus

Annonce

Le forum rencontre en ce moment quelques soucis de charge, il est possible qu'une erreur soit affichée quand vous postez un message, ne rechargez pas la page au risque de poster une seconde fois votre message

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#1 Le 26/10/2009, à 15:59

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, à 16:29

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, à 16:31

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>Ubuntu 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, à 16:38

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, à 17:25

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, à 22:48

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, à 22:49)


GUL les mardis à Bordeaux : Giroll
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdnGMT-4

Hors ligne

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

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

Haut de page ↑