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
done
ili5@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