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/10/2009, à 21:25

phenix88be

[A améliorer] Gestion des PDF dans nautilus

Bonjour à tous,

Voila je me disais y a pas longtemps que c'était dommage de pas pouvoir gérer les PDF directement dans nautilus comme je gère mes images avec nautilus-image-converter.

Au hasard des recherches j'ai trouver un utilitaire assez puissant en ligne de commande: pdftk [doc]
Je me suis mit en quête de script bash pour gérer sa et j'ai trouver sa: http://www.simple-linux.com/fr/2009/08/11/script-nautilus-pour-reunir-plusieurs-pdf/

Voila le script pour les feignant lol

#!/bin/bash
ifs=$IFS
IFS='\
'
PDFARGUMENTS=""
fpaths=`echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | sort`
for file in $fpaths
do
  if [ -f "$file" ]; then
	base=${file%.*}
	ext=${file##*.}
	if [ "$ext" == "pdf" ]; then
	    PDFARGUMENTS="$PDFARGUMENTS \"$file\""
	    pdfdir=`dirname "$file"`
	fi
  fi
done

szSavePath=$(zenity --file-selection --save --confirm-overwrite);echo "$szSavePath"

if [ -n "$PDFARGUMENTS" ]; then
    eval pdftk "$PDFARGUMENTS" cat output "$szSavePath"
fi
IFS=$ifs

Voici la version extraire, j'ai modifier moi même, c'est peut être pas super réussi:

#!/bin/bash
ifs=$IFS
IFS='\
'
PDFARGUMENTS=""
fpaths=`echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | sort`
for file in $fpaths
do
  if [ -f "$file" ]; then
	base=${file%.*}
	ext=${file##*.}
	if [ "$ext" == "pdf" ]; then
	    PDFARGUMENTS="$PDFARGUMENTS \"$file\""
	    pdfdir=`dirname "$file"`
	fi
  fi
done

if [ -n "$PDFARGUMENTS" ]; then
    eval pdftk "$PDFARGUMENTS" burst
fi
IFS=$ifs

Voila, malheureusement mes connaissances en Bash s'arrête la (mais je me soigne, j'vous jure), si quelqu'un a le temps de faire un bon petit truc a partir de pdftk, je suis pour a 100% lol

Bye

Dernière modification par phenix88be (Le 07/10/2009, à 21:28)

Hors ligne