crea_dos.sh

script crea_dos.sh - Thomas REY, 12/16/2024 02:44 pm

Download (1.8 kB)

 
1
#!/bin/bash
2
# Paramètres attendus :
3
# -n nom : le nom de fichier qui apparaitra dans les dossiers élèves (sans le pdf)
4
# -f fichier csv avec chemin relatif (ou pas) : fichier csv où sont les infos :
5
6
# fichier CSV
7
# Avec pour colonnes :
8
# numéro, nom, prenom, login, mail
9
# login et mail ne servent à rien mais mon fichier est ainsi fait
10
# numéro est le numéro de dossier attribué par éléa suite à la restitution du document dans l'activité "Devoir"
11
12
# Valeurs par défaut :
13
nomDS='interrogationQCM'
14
csv_file="../../../../../AMC_2de7_avec_dossier_Elea2.csv"
15
16
17
# Récupération des aramètres nommés :
18
while getopts n:c: option
19
do
20
    case "${option}" 
21
        in
22
        n)nomDS=${OPTARG};;
23
        c)csv_file=${OPTARG};;
24
    esac
25
done
26
27
echo Je vais créer les dossiers élèves avec les infos suivantes :
28
echo "Chemin du csv : $csv_file"
29
echo "Nom de l'interro : $nomDS"
30
31
32
# Vérifier si le fichier existe
33
if [[ ! -f "$csv_file" ]]; then
34
    echo "Le fichier $csv_file n'existe pas."
35
    exit 1
36
fi
37
38
# Lire le fichier ligne par ligne
39
index=0 
40
while IFS="," read -r numero nom prenom login; do
41
    # Ignorer la première ligne (intitulés des colonnes)
42
    if [[ $index -eq 0 ]]; then
43
        index=$((index + 1))
44
        continue
45
    fi
46
    echo -------------------------------------------
47
    echo numéro=$numero
48
    echo prenom=$prenom
49
    # Créer le dossier avec le format souhaité
50
    dossier="${prenom} ${nom}_${numero}_assignsubmission_file"
51
    mkdir -p "$dossier"
52
    echo "Dossier créé : $dossier"
53
    # On récupère le fichier dont le nom comporte
54
    # le Numéro :
55
    for fichier in $(ls *${numero}*.pdf)
56
    do
57
    	# Compression et copie du fichier :
58
	ps2pdf -dPDFSETTINGS=/ebook $fichier "$dossier"/$nomDS.pdf
59
	echo "J'ai compressé et copié" $fichier dans "$dossier"/IE02.pdf
60
    done
61
done < "$csv_file"