On 20 Mar 2003, Jean-Bruno Luginb�hl wrote:

> Bonjour � tous,
> 
> je bute sur une petite chose. Nous utilisons OpenOffice.org pour notre
> bureautique, sous Linux. Maintenant mon probl�me c'est que nous avons
> une imprimante avec deux bacs. Aucun probl�me pour imprimer sur l'un ou
> l'autre bac, simplement dans un bac j'ai des feuilles avec ent�tes et
> sur l'autre j'ai des pages blanches. Lorsqu'une lettre contient deux ou
> plus de pages, je voudrai que la premi�re soit imprim�e sur le bac 2 et
> que les suivantes s'impriment sur le bac 3. Quel est la commande LPR ou
> autre pour y parvernir?
Le faire en deux �tapes:
Imprimer de la page 1 � la page 1 sur le bac 2, puis
imprimer de la page 2 � la fin, sur le bac 3.
...
Tu peux, si vraiement cr�er une imprimante virtuelle qui utilisera
les outils du paquet ``pstools'' pour rediriger la premi�re page sur
l'imprimante r�elle et sur le bac deux puis rediriger les pages suivantes
sur l'imprimante r�elle et sur le bac trois...
...
Ou utiliser un script pour imprimer plutot que la commande lpr...
(Le script utilisant les m�thodes d�crites pr�c�dement;)

Un truc du style: ...

#!/bin/sh
# script pondu ``in live'' dans mon mailer
# Not tested!
# Sous r�serves: Devrait fonctionner, mais pas essay�:-b 
#
#export LPFIRST="lpr -P monimprimantebac2"
#export LPLAST="lpr -P monimprimantebac3"
# ou
#export LPFIRST="cat pbacdeux.head - | lpr -P monimprimante"
#export LPLAST="cat pbactrois.head - | lpr -P monimprimante"
# mais en attendant:
export LPFIRST="cat >/dev/null;echo print bac1"
export LPLAST="cat >/dev/null;echo print bac2"

export TEMPFILE=$(date +/tmp/print_entete_%d-%m-%y_%T_)$$
cat >$TEMPFILE || exit 1
trap "rm $TEMPFILE;exit" 0 1 2 3 6 9 15

NPAGES=$(
    pstops '1:0' "$TEMPFILE" 2>&1 >/dev/null |\
    awk '/Wrote/ {
        n=0
        while ($n != "Wrote") {n++}
        n++
        print $n
        }'
    )

if [ $NPAGES -lt 2 ] ; then
    echo "cat $TEMPFILE | $LPFIRST" | sh
else
    # Enlever le param ``-q'' pour debug 
    echo "psselect -q -p1 $TEMPFILE  | $LPFIRST" | sh
    echo "psselect -q -p2- $TEMPFILE | $LPLAST" | sh
fi

--
 F�lix Hauri  -  <[EMAIL PROTECTED]>  -  http://www.f-hauri.ch


--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.

Répondre à