#1 Le 28/08/2006, à 15:50
- Deltau
[Script]Vider un répertoire dans un autre.
Bon, c'est mon tout premier post et mon tout premier script en fait... Je suis total débutant (linux ET bash), mais je me suis dit que ce serait cool de faire une petite fonction qui vide un répertoire dans un autre (je l'utilise par exemple pour vider le répertoire Incoming de aMule dans mon répertoire Archives) :
function tp () { # tp pour transporte, admet deux répertoires comme arguments
cd $1
for i in *.*
do mv $i $2
done
}
Là je l'ai inséré comme ça dans mon bash (et en fait je sais pas ce que je pourrais en faire d'autre... avec un #!/bin/bash/ et puis je le met où pour qu'il le traite comme une fonction à part entière ?)
Je ne sais pas si ça pourra servir un jour à qqun, mais
- je suis fier de l'avoir écrit ^^
- je suis jaloux de tous ces gens qui publient des trucs et astuces pour aider les autres
Dites-moi ce que vous en pensez !
Hors ligne
#2 Le 28/08/2006, à 16:18
- loutre
Re : [Script]Vider un répertoire dans un autre.
Bah bravo pour ton premier script, je t'encourage à continuer.
Mais...
N'est-ce pas le marteau piqueur pour écraser la mouche ?
Un simple
mv repertoire1/* repertoire2
ne suffit-il pas ?
=°.°=
J'ai éprouvé l'irrésistible désir d'aller porter ma jeune existence au-delà de l'horizon, là où l'espace et le vent offrent à l'homme une dimension que je voyais comme une éternité palpable. Mes blogs [url=http://[Merci de relire les règles]/d6wsyxp]au Tchad[/url], vers Compostelle.
Hors ligne
#3 Le 30/08/2006, à 10:37
- Deltau
Re : [Script]Vider un répertoire dans un autre.
Euh on dirait que si ... Sinon il y a un autre moyen que le mettre dans ~/.bashrc ?
Hors ligne
#4 Le 30/08/2006, à 17:13
- jdloic
Re : [Script]Vider un répertoire dans un autre.
Tu peut créer un fichier dans /usr/local/bin et y mettre ton script (sans la déclaration de la fonction),
Il doit commencer par: "#!/bin/sh" (c'est un commentaire) pour que Linux sache avec quel interpréteur lancer ce script (en l'occurence /bin/sh).
Il faut préciser que ce fichier peut être executer : chmod +x <fichier>
Ensuite on l'appelle comme n'importequelle commande.
Par contre pour ton script, ce qui me gène, c'est que tu fais un CD et donc tu changer le répertoire de l'utilisateur sans le remettre comme il était avant.
Tu aurais pu faire "for i in $1/*" sans faire de CD.
Ensuite, dans ton cas les 2 répertoires en paramètre sont indispensable il faut donc vérifier qu'ils sont bien renseigné et sont bien des répertoires.
Dernière modification par jdloic (Le 30/08/2006, à 17:14)
Hors ligne