Bonjours je dois rendre un projet dans le cadre de mes études
#Shell : Save
#Parcours des répertoires à partir d'un argument et recopie de tous les fichiers qu'on y trouve dans un répertoire "~/SAVE"
#Attention, la commande find est proscrite de même que l'utilisation d'options de la commande cp.
Donc pour le moment j'arrive nikel à copier tous mes fichiers et tous mes dossiers sauf ceux commencant par un .
Je rajoute donc une clause .* pour séléctionner ce type de dossier seulement voilà j'ai besoin d'isolé maintenant le dossier . et le dossier .. je fait donc des test avec un script qui va liste les dossier commencant par un "." le problème est qu'avec la condition if test $i -eq . il prend en compte tous mes fichiers commencant par un .
Bien entendu je ne vous demande pas de me faire le scripte mais si vous pouviez m'orienter vers une solution je vous en serais reconnaissant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #! /bin/sh for i in .* do if test $i -eq . then echo "$i est un fucking ." else echo $i fi doneili5@sunfire$ ls.sh
. est un fucking .
.#c-lisp.l est un fucking .
.. est un fucking .
.relou est un fucking .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 #crcp.sh #! /bin/sh /home/ili5/exo/rcp.sh $1 /home/ili5/Save
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 #rcp.sh #! /bin/sh if test $# -eq 2 then if test -d $1 then cd $1 echo "Repertoire $1 existant" for i in .* * do if test -d $i then echo "$i est un dossier" echo "création du dossier $i" mkdir $2/$i /home/ili5/exo/rcp.sh $i $2/$i else echo "$i est un fichier" echo "copie de $i vers $2/$i" cp $i $2/$i fi done else echo "Dossier $1 Inexistant ou introuvable" fi fi
Partager