|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 4 ![]() |
Bonjour à tous,
Mon problème est le suivant: Je désire modifier un fichier spool d'impression en substituant des séquences ESCAPE par d'autres. Je n'ai pas trouvé sous WINDOWS de programme me permettant une telle chose et développer un tel programme me parait très compliqué. Par contre j'ai lu sur certains sites internet qu'il est possible sous un système LINUX de créer un script pour une imprimante donnée qui pourrai traiter le fichier spool avant de l'envoyer à l'imprimante. Pour info:Les imprimantes sont des imprimantes reseaux PCL, (4 au total),et le PC LINUX ferai office de serveur d'impression et ne servirait qu'à celà. Mes questions (désolé mais j'en ai plein): 1) Peut on utiliser un script pour faire ce que je désire? 2)Si oui est ce que les commandes internes de Linux suffisent ou faut il développer quelque chose en PERL en C ou autre ? 3)s'il faut développer n'étant pas développeur est ce envisageable par un novice? 4) LINUX utilise je croix le système CUPS pour imprimer or les infos que j'ai trouvé parle d'un spooleur de BERKELEY est ce que l'on peut utiliser un tel système sous LINUX si oui lequel? si non peut on utiliser un autre système UNIX gratuit? C'est tout Merci d'avance pour votre aide et merci de votre indulgence si mes questions vous paraissent stupide mais je n'ai pas de grandes connaissances en LINUX, j'essaye simplement de trouver une solution à mon problème par tous systèmes qui me parait envisageable |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : décembre 2002 Messages : 1 423 ![]() |
Bonjour,
Voici un peu de doc. Appremment ça parrait tout à fait possible http://www.cups.org/doc-1.1/spm.html#WRITING_FILTERS http://www.cups.org/doc-1.1/sam.html#FILE_TYPING_FILTERING Je pense que tu peux créer un filtre en script shell utilisant une commande sed. http://www.shellunix.com/sed.html regarde comment faire une 'substitution' avec 's/motif/nouveau/g'
__________________
Reportage d'Arte sur Linux |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 4 ![]() |
bonjour narmataru,
Merci pour la bonne nouvelle et pour les infos, je vais potasser tout cela. |
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé
![]() Inscription : mars 2004 Messages : 3 109 ![]() |
Je me rappelle avoir du résoudre un problème d'impression avec des codes d'échappement. Faudrai retrouver les codes d'échappement pour le PCL5
J'avais fait un fichier avec les codes que je désirai et mon script était tout simple : Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 4 ![]() |
Bonjour Katyucha,
Dans mon cas je connais les sequences escape mais ils apparaissent plusieurs fois dans mon fichier spool et si je comprend ton script il s'agit en fait d'une concatenation de commandes escape que tu mets en entête et tu rajoutes ton fichier.Donc pas utilisable dans mon cas. Mais merci pour l'info. Par contre j'aurai plusieurs questions à te poser: Dans ton cas comment a tu fais pour appliquer ce script lors d'une impression ? Comment récupères tu le nom du fichier spool ? Merci pour tes réponses |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() Inscription : mars 2004 Messages : 3 109 ![]() |
C'était un programme que j'ai dev moi même.
Je générai un rapport SQL via Informix en fichier texte et j'utilisait le fichier de code pour imprimer en format paysage + pour imprimer en local (connexion a distance via modem rtc) |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 4 ![]() |
Bonjour à tous,
Merci à ceux qui ont tenté de m'aider. Ayant trouvé une solution je vous la livre si cela peut interesser quelqu'un. j'ai utilisé un LINUX redhat 8 et je l'ai paramétré pour utiliser LPRng et non CUPS. Dans le fichier printcap j'ai créer manuellement une imprimante avec les paramètres suivants: printer:\ :ml#0:\ :mx#0:\ :sd=/var/spool/lpd/printer:\ :sh:\ :rm="mon adresse IP":\ :rp=raw:\ :if=/var/spool/lpd/test.pl: c'est ce dernier paramètre qui permet de dire au système qu'a chaque fois qu'un spool arrive sur mon imprimante il le traite avec le programme perl "test.pl". le programme test.pl contient les lignes suivantes: #!/usr/bin/perl while (<STDIN>){ s/"commande recherchée"/"nouvelle commande"/g; print $_; }; et le tour est joué. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com