Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 07/02/2021, à 00:03

anthromon

Problème avec un script pour convertir des pdf en jpeg

Bonjour, j'essaie de faire un script pour convertir les PDF en JPEG.

Le script fonctionne si on ouvre le terminal dans le dossier où se trouvent les PDF et le script aussi mais j'aimerais que le script fonctionne avec le chemin absolu pour pouvoir simplement lancer le script dans le dossier où se trouvent les PDF.

J'ai essayé énormément de choses (par exemple le topic ci-dessous) mais rien na fonctionner, je dois mal m'y prendre...
https://forum.ubuntu-fr.org/viewtopic.php?id=142862

database=$(find *.pdf)

# modification de l'IFS pour qu'il passe en saut de ligne
old_IFS=${IFS} IFS=$'\n'

# boucle utilisant la variable database
for db in ${database}
do
  mkdir -p "Nouveau dossier/${db::-4}" 
  pdftoppm -jpeg ${db} "Nouveau dossier/${db::-4}/"
done

Hors ligne

#2 Le 07/02/2021, à 00:50

Watael

Re : Problème avec un script pour convertir des pdf en jpeg

les accolades ne servent à rien lors d'un seul/simple Développement de Paramètres (sans substitution).
la modification de l'IFS ne sert à rien.
la boucle for ne sert à rien.
dans find, il faut protéger l'astérisque, et on ne fait pas comme ça : find attend d'abord un chemin.

le parcours de la liste de fichiers retournée par find se fait ainsi :

find ./ -type f -name '*.pdf' -print0 | while IFS='' read -rd '' nomFic; do : whatever with "$nomFic"; done

ou

while IFS='' read -rd '' nomFic; do : whatever with "$nomFic"; done < <(find ./ -type f -name '*.pdf')

Pourquoi ${db::-4} ?

quand cela sera fait, on y verra plus clair.

Dernière modification par Watael (Le 07/02/2021, à 00:53)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne