aboutsummaryrefslogtreecommitdiff
path: root/fichiers/scripts/copyten-mk2.sh
blob: 2d51739c199d60b5affb646a8f0d00824161de20 (plain)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/bin/bash

# création du compteur de fichiers copiés.
countfiles=0

# On demande quels fichiers doivent être copiés. Mais avant cela, on
# explique à l'utilisateur ce que fait ce programme.
echo "Attention: ce programme copie au maximum 10 fichiers."
read -p 'Que souhaitez-vous copier: ' files

# On demande la destination:
read -p 'Répertoire de destination: ' dest

# <destination> doit être un répertoire:
if [ ! -d $dest ]
then
    echo "Erreur: la destination doit être un répertoire."
    echo "        Le cas échéant, utilisez \"mkdir $dest\""
    echo "        pour créer le répertoire de destination."
    exit 1
else # Si <destination> est un répertoire, alors pour chaque fichier
     # copié on incrémente le compteur. Et dès que le compteur
     # atteint le chiffre de 10, on sort de la boucle.
    for file in $files # pour chaque fichier à copier
    do
	if [ ! -e $file ] # si le fichier à copier n'exite pas
	then
	    echo "création de $file qui n'existe pas..."
	    touch $dest/$file
	    continue # arrêter ici et reprendre à la l. 24
	fi
        cp $file $dest
        let "countfiles = countfiles + 1"
        if [ $countfiles -eq 10 ]
        then
            break # sortie de la boucle
        fi
    done
fi

echo "Terminé. 10 fichiers au maximum ont été copiés dans $dest."