Page 1 sur 1

[zsh] alias avec paramètres

Publié : jeu. 03 nov. 2011, 17:38
par effraie
Hello,


étant régulièrement amener a effectuer cette opération, je cherche a me faire un alias (dans .zshrc).

Code : Tout sélectionner

gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=fichier_reduit.pdf fichier_a_reduire.pdf
cette commande fonctionne parfaitement dans ma console.
pour l'alias, j'ai essayé les solutions suivante :

Code : Tout sélectionner

alias pdf-reduce='gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=$2 $1' #dans l'espoir de taper pdf-reduce 1.pdf 1small.pdf
alias pdf-reduce='gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=$1 $2' # au cas ou l'ordre des variables trouble gs
alias pdf-reduce='gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=' # en indiquant pdf-reduce 1small.pdf 1.pdf
dans les trois cas, j'obtient l'erreur suivante :

Code : Tout sélectionner

17:33 mathieu@vian ~/Téléchargements % pdf-reduce 1.pdf plan-plaquette-epheta.pdf
**** Unable to open the initial device, quitting.
zsh: exit 1     gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile= 1.pdf
j'imagine que ma façon d'utiliser $1 et $2 dans mon alias est foireuse, mais je ne trouve pas la bonne façon de faire...

Re: [alias / zsh]

Publié : jeu. 03 nov. 2011, 17:44
par benjarobin
Il ne faut pas utiliser d'alias dans ton cas, mais une fonction

Code : Tout sélectionner

pdf-reduce () {
   gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=$2 $1
}