From 479fe9c1f19c96ff6a6c0483b65b3fb91c9e6de1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9drix?= Date: Thu, 30 Apr 2026 08:53:02 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20prep.sh=20=E2=80=94=205=20corrections=20?= =?UTF-8?q?(log=5Fdir=20manquant,=20ls=20-c1=E2=86=92-1,=20yum/dnf,=20mapf?= =?UTF-8?q?ile,=20r=C3=A9sum=C3=A9=20simplifi=C3=A9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- prep.sh | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/prep.sh b/prep.sh index de30408..ee6d5c4 100755 --- a/prep.sh +++ b/prep.sh @@ -12,6 +12,9 @@ # - Modification du traitement des résumés des DOC. La fonctionnalité n'est pas encore accessible. +# Vérification du répertoire de travail +[[ ! -d "local/bin" ]] && { echo "Erreur : lancer depuis la racine du projet scripts-bash"; exit 1; } + # Spécifier le chemin du fichier journal log_dir="$HOME/log" log_file="${log_dir}/a5l-scripts_bash_prep-$(date '+%Y%m%d-%H%M%S')-$$.log" @@ -42,9 +45,10 @@ create_dir() { } +create_dir "$log_dir" log "Lister les fichiers présents dans local/bin" -ls local/bin/ -c1 >.config/files_local-bin +ls local/bin/ -1 >.config/files_local-bin ######## @@ -62,7 +66,7 @@ destination_dir="local/share/man" create_dir "$destination_dir" log "Lister les fichiers présents dans local/share/doc" -ls "$source_dir/" -c1 >.config/files_local-share-doc +ls "$source_dir/" -1 >.config/files_local-share-doc log "Creer les pages MAN" @@ -79,7 +83,7 @@ if ! command -v pandoc &> /dev/null; then sudo dnf install -y pandoc elif [ -x "$(command -v yum)" ]; then log "Installation de Pandoc via YUM (Red Hat)..." - sudo dnf install -y pandoc + sudo yum install -y pandoc elif [ -x "$(command -v apt)" ]; then log "Installation de Pandoc via APT (Debian)..." sudo apt update && sudo apt install -y pandoc @@ -100,10 +104,10 @@ log " Traitement des fichiers à copier dans $destination_dir" log " Vérifier si le fichier $file_local_desc existe" if [ -e "$file_local_desc" ]; then log " Récupérer des fichiers installés" - fileslist_local=$(cat $file_local_desc) + mapfile -t fileslist_local < "$file_local_desc" log " Créer la page man" - for file in $fileslist_local; do + for file in "${fileslist_local[@]}"; do new_name="${file%.*}" # Supprimer l'extension md if [ -f "$source_dir/$file" ]; then pandoc -s "$source_dir/$file" -t man -o "$destination_dir/$new_name" || error "Impossible de créer la page 'man' $destination_dir/$new_name depuis $source_dir/$file" @@ -115,13 +119,13 @@ else fi log "Lister les fichiers présents dans local/share/man" -ls local/share/man/ -c1 >.config/files_local-share-man +ls local/share/man/ -1 >.config/files_local-share-man log "Lister les fichiers présents dans local/share/ytdll" -ls local/share/ytdll/ -c1 >.config/files_local-share-ytdll +ls local/share/ytdll/ -1 >.config/files_local-share-ytdll log "Lister les fichiers présents dans local/share/ytdll/lib" -ls local/share/ytdll/lib/ -c1 >.config/files_local-share-ytdll-lib +ls local/share/ytdll/lib/ -1 >.config/files_local-share-ytdll-lib ######## # Résumé des DOC @@ -130,21 +134,19 @@ ls local/share/ytdll/lib/ -c1 >.config/files_local-share-ytdll-lib for fichier in local/share/doc/*.md; do echo "Résumé pour $fichier :" description_found=0 - empty_line_encountered=false description_started=0 while IFS= read -r ligne; do - if [ "$description_found" -eq 1 ] && [ "$description_started" -eq 1 ] && [ -n "$ligne" ]; then - echo "$ligne" - elif [ "$description_found" -eq 1 ] && [ "$description_started" -eq 0 ] && [ -n "$ligne" ]; then - echo "$ligne" + if [ "$description_found" -eq 1 ]; then + if [ -z "$ligne" ]; then + [ "$description_started" -eq 1 ] && break + else description_started=1 - elif [ "$description_found" -eq 1 ] && [ "$description_started" -eq 1 ] && [ ! -n "$ligne" ]; then - break + echo "$ligne" + fi elif [ "$ligne" = "# DESCRIPTION" ]; then description_found=1 fi - done < "$fichier" echo "..."