Bonsoir,
je suis en train de vérifier mon script avec shellcheck.
à la ligne 33, je vois qu'il y a un problème que j'aimerais illiminer mais comme je n'y comprend pas grand chose, je peine à la corriger. Je vois à peu près ce qui ce passe mais pas plus. On dirait, dans mon langage, que "MOUNT_POINT" n'est pas utilisé dans le script. Si ça veut vraiment dire ça.
En tout cas, ça ne pause aucun problême sur le bon fonctionnement du script.
l'erreur :
In LE_SCRIPT line 33:
MOUNT_POINT=${MOUNT_POINTS[0]}
^---------^ SC2034: MOUNT_POINT appears unused. Verify use (or export if used externally).
For more information:
https://www.shellcheck.net/wiki/SC2034 -- MOUNT_POINT appears unused. Verif...
la partie du script :
#!/bin/bash
PATH=$PATH:/sbin:/usr/sbin
## CONDITION : UN SEUL DVD-VIDÉO.
mapfile -t BLKID < <(blkid /dev/sr* |sed -E 's/^([^:]+): .*/\1/')
if [[ "${#BLKID[@]}" -eq "0" ]] ; then
echo "Aucun DVD trouvé: abandon"
exit 0
fi
idx=0
for dev in "${BLKID[@]}"; do
mnt=$(mount |sed -n -E "s/^${dev//\//\\\/} on (.*) type .*\$/\\1/p")
[[ -z "$mnt" ]] && continue
if [[ -f "$mnt/VIDEO_TS/VIDEO_TS.IFO" ]]; then
DEVICES[$idx]="$dev"
MOUNT_POINTS[$idx]="$mnt"
idx=$((idx+1))
fi
done
if [[ "${#DEVICES[@]}" -eq 0 ]]; then
echo "Aucun dvd vidéo monté : Abandon"
exit 0
elif [[ "${#DEVICES[@]}" -gt 1 ]]; then
echo "Il y a plus d'un dvd video détecté : Abandon"
exit 0
fi
DEVICE=${DEVICES[0]}
MOUNT_POINT=${MOUNT_POINTS[0]}
## LABEL DVD-VIDÉO & NOMBRE TOTAL DE TITRES SUR CELUI-CI.
idx=0
TITLE_COUNT=0
regexp='^Title: '
while read -r line; do
idx=$((idx+1))
if [[ "$idx" -eq 1 ]]; then
TITLE=${line#*: }
elif [[ "$line" =~ $regexp ]]; then
TITLE_COUNT=$((TITLE_COUNT+1))
fi
done < <(lsdvd "$DEVICE" 2>/dev/null)
unset regexp dev mnt idx BLKID DEVICES MOUNT_POINTS
if [[ -z "$TITLE" ]]; then
echo "Pas de dvd vidéo trouvé : abandon"
exit 0
fi
echo "Proceed..."
echo "DVD-Vidéo : $TITLE"
read -r -p "Ce nom convient-il ? [Y/n] " input
case $input in
[yY][eE][sS]|[yY])
echo "Yes"
mkdir -p "$TITLE/IFOS"
;;
[nN][oO]|[nN])
echo "No"
read -r -p "Entrer un nouveau nom: " TITLE
mkdir -p "$TITLE/IFOS"
;;
*)
echo "Invalid input..."
echo "Quit"
exit 1
;;
esac
Merci pour l'aide.
Dernière modification par Anonyme (01-03-2020 07:42:23)