Commande lpfilter

Remarque: Il s'agit d'une commande System V Print Subsystem.

Objectif

Administre les filtres utilisés avec le service d'impression LP.

Syntaxe

lpfilter -f FilterName -F PathName

lpfilter -f FilterName -

lpfilter -f FilterName -i

lpfilter -f FilterName -x

lpfilter -f FilterName -l

Descriptif

La commande lpfilter permet d'ajouter, de modifier, de supprimer et de répertorier un filtre utilisé avec le service d'impression LP. Ces filtres sont utilisés pour convertir le type de contenu d'un fichier en un type de contenu acceptable pour une imprimante.

Si vous entrez lpfilter -?, le système affiche le message d'utilisation de la commande et renvoie 0.

Indicateurs

Article Descriptif
- (trait d'union) Ajoute ou modifie un filtre comme indiqué dans l'entrée standard.
-f FilterName Indique le nom du filtre à ajouter, modifier, supprimer ou répertorier.
-F PathName Ajoute ou modifie un filtre comme indiqué par le contenu du chemin d'accès au fichier.
-i Réinitialise un filtre d'origine à ses paramètres d'origine.
-l Répertorie une description de filtre.
-X Supprime un filtre.

Le paramètre all peut être utilisé à la place d'un FilterName avec l'un de ces indicateurs. Lorsque all est spécifié avec l'indicateur -F ou - , la modification demandée est apportée à tous les filtres. L'utilisation de all avec l'indicateur -i a pour effet de restaurer à leurs paramètres d'origine tous les filtres pour lesquels des paramètres prédéfinis étaient initialement disponibles. L'utilisation du paramètre all avec l'indicateur -x entraîne la suppression de tous les filtres et son utilisation avec l'indicateur -l génère une liste de tous les filtres.

Ajout ou modification d'un filtre

Le filtre nommé dans l'indicateur -f est ajouté à la table de filtres. Si le filtre existe déjà, sa description est modifiée pour refléter les nouvelles informations dans l'entrée.

La description du filtre est extraite de PathName si l'indicateur -F est indiqué ou de l'entrée standard si l'indicateur - est spécifié. L'un des deux doit être indiqué pour définir ou modifier un filtre. Si le filtre nommé est un filtre fourni à l'origine avec le service LPprint, l'indicateur -i restaure la description du filtre d'origine.

Lorsqu'un filtre existant est modifié avec l'indicateur -F ou l'indicateur - , les éléments qui ne sont pas spécifiés dans les nouvelles informations sont laissés tels qu'ils étaient. Lorsqu'un nouveau filtre est ajouté à l'aide de cette commande, des valeurs par défaut sont affectées à des éléments non spécifiés.

Les filtres sont utilisés pour convertir le contenu d'une demande en un flot de données acceptable pour une imprimante. Pour une demande d'impression donnée, le service d'impression LP connaît les éléments suivants:

  • Contenu de la demande
  • Nom de l'imprimante
  • Type de l'imprimante
  • Types de contenu acceptables pour l'imprimante
  • Modes d'impression demandés par l'auteur de la demande

Il utilise ces informations pour trouver un filtre ou un pipeline de filtres qui convertit le contenu en un type acceptable pour l'imprimante.

Vous trouverez ci-après une liste des éléments qui fournissent une entrée à cette commande et une description de chaque élément. Toutes les listes sont séparées par des virgules ou des espaces.

  • Types d'entrée: content-type-list
  • Types de sortie: content-type-list
  • Types d'imprimante: liste-types-imprimantes
  • Imprimantes: liste-imprimantes
  • Type de filtre: filter-type
  • Commande: shell-command
  • Indicateurs: template-list
Article Descriptif
Types d'entrée Indique les types de contenu qui peuvent être acceptés par le filtre. (La valeur par défaut est any.)
types de sortie Indique les types de contenu que le filtre peut produire à partir de n'importe quel type de contenu d'entrée. (La valeur par défaut est any.)
Types d'imprimante Indique le type d'imprimante pour lequel le filtre peut être utilisé. Le service d'impression LP limite l'utilisation du filtre à ces types d'imprimantes. (La valeur par défaut est any.)
Imprimantes Indique les noms des imprimantes pour lesquelles le filtre peut être utilisé. Le service d'impression LP limite l'utilisation du filtre aux seules imprimantes nommées. (La valeur par défaut est any.)
Type de filtre Marque le filtre comme filtre lent ou comme filtre rapide . Les filtres lents sont généralement ceux qui mettent beaucoup de temps à convertir leur entrée. Ils sont exécutés sans connexion à une imprimante pour empêcher les imprimantes d'être immobilisés pendant que le filtre est en cours d'exécution. Si une imprimante répertoriée se trouve sur un système distant, son type de filtre doit avoir la valeur slow. Les filtres rapides sont généralement ceux qui convertissent leur entrée rapidement ou ceux qui doivent être connectés à l'imprimante lors de l'exécution. Elles sont fournies à l'adresse IP du programme d'interface pour une exécution connectée à l'imprimante physique.
Commande Indique le programme à exécuter pour appeler le filtre. Le nom de chemin complet du programme ainsi que les indicateurs fixes doivent être inclus dans la commande shell; des indicateurs supplémentaires sont construits en fonction des caractéristiques de chaque demande d'impression et de la zone "indicateurs". Une commande doit être indiquée pour chaque filtre.

La commande doit accepter un flux de données comme entrée standard et produire le flux de données converti sur sa sortie standard. Cela permet de construire des pipelines de filtre pour convertir des données qui ne sont pas traitées par un seul filtre.

Flags Indique la liste séparée par des virgules des modèles utilisés par le service d'impression LP pour construire des indicateurs pour le filtre à partir des caractéristiques de chaque demande d'impression répertoriée dans le tableau ultérieurement.

En général, chaque modèle est de la forme suivante:

keyword-pattern=remplacement

Le mot clé désigne la caractéristique que le modèle tente de mapper dans un indicateur spécifique au filtre ; chaque mot clé valide est répertorié dans le tableau ci-dessous. Un modèle est l'un des suivants: un modèle littéral de l'une des formes répertoriées dans le tableau, un astérisque (*) unique ou une expression régulière. Si pattern correspond à la valeur de la caractéristique, le modèle correspond et est utilisé pour générer un indicateur spécifique au filtre. Le remplacement est utilisé comme indicateur.

Les expressions régulières sont les mêmes que celles trouvées dans les commandes ed ou vi . Cela inclut les caractères \ (... \) et les constructions \n , qui peuvent être utilisées pour extraire des parties du modèle pour les copier dans le remplacement, et les ` ` &'', qui peut être utilisé pour copier l'intégralité du canevas dans le remplacement.

Le remplacement peut également contenir un ` ` * ''. Il est également remplacé par le modèlecomplet, tout comme ` ` &''de la commande ed .

indicateur lp Propriétés
-T
caractéristique
Type de contenu (entrée)
Mot clé
ENTREE
Modèles possibles
type de contenu
Non disponible
caractéristique
Type de contenu (sortie)
Mot clé
Sortie
Modèles possibles
type de contenu
Non disponible
caractéristique
Type d'imprimante
Mot clé
TERM
Modèles possibles
type d'imprimante
-d
caractéristique
Nom d'imprimante
Mot clé
IMPRIMANTE
Modèles possibles
nom-imprimante
--f, -o cpi=
caractéristique
Pas de caractère
Mot clé
interface commune de programmation
Modèles possibles
entier
--f, -o lpi=
caractéristique
Pas de ligne
Mot clé
LPI
Modèles possibles
entier
--f, -o length=
caractéristique
Hauteur de page
Mot clé
LENGTH
Modèles possibles
entier
--f, -o largeur=
caractéristique
Largeur de page
Mot clé
WIDTH
Modèles possibles
entier
-P
caractéristique
Pages à imprimer
Mot clé
Pages
Modèles possibles
liste-pages
-S
caractéristique
Jeu de caractères roue d'impression
Mot clé
CHARSET CHARSET
Modèles possibles
nom-jeu-caractères nom-roue-impression
-f
caractéristique
Nom du formulaire
Mot clé
FORM
Modèles possibles
nom-formulaire
-y
caractéristique
Modes
Mot clé
MODES
Modèles possibles
mode
-n
caractéristique
Nombre d'exemplaires
Mot clé
COPIES
Modèles possibles
entier

Par exemple, le modèleMODES landscape = -lindique que si une demande d'impression est soumise avec l'indicateur -y paysage , le filtre reçoit l'indicateur -l. Comme autre exemple, le modèleTERM * = -T *indique que le filtre est associé à l'indicateur -T type-imprimante pour le type-imprimante associé à une demande d'impression à l'aide du filtre.

Comme dernier exemple, considérez le modèleMODES prwidth\=\(.*\) = -w\1. Supposons qu'un utilisateur donne la commande lp -y prwidth=10

A partir du tableau ci-dessus, le service d'impression LP détermine que l'indicateur -y est géré par un modèle MODES . Le modèle MODES fonctionne ici car le modèle ` ` prwidth\=\(. * \) '' correspond au prwidth=10 fourni par l'utilisateur. Le remplacement -w\1 entraîne le service d'impression LP à générer l'indicateur de filtre -w10.

Si nécessaire, le service d'impression LP construit un pipeline de filtres en concaténant plusieurs filtres pour gérer le fichier de l'utilisateur et tous les indicateurs d'impression. Si le service d'impression construit un pipeline de filtres, les valeurs INPUT et OUTPUT utilisées pour chaque filtre du pipeline sont les types d'entrée et de sortie pour ce filtre, et non pour l'intégralité du pipeline.

Suppression d'un filtre

L'indicateur -x est utilisé pour supprimer le filtre spécifié dans FilterName de la table de filtre LP.

Affichage de la description d'un filtre

L'indicateur -l permet de répertorier la description du filtre nommé dans FilterName. Si la commande aboutit, le message suivant est envoyé à la sortie standard:

Input types: content-type-list
   Output types: content-type-list
   Printer types: printer-type-list
   Printers: printer-list
   Filter type: filter-type
   Command: shell-command
   flags: template-list

Si la commande échoue, un message d'erreur est envoyé à l'erreur standard.

Security

Attention aux utilisateurs du contrôle d'accès à base de rôles: Cette commande peut effectuer des opérations privilégiées. Seuls les utilisateurs privilégiés peuvent exécuter des opérations privilégiées. Pour plus d'informations sur les autorisations et les privilèges, voir Base de données des commandes privilégiées dans Sécurité. Pour obtenir la liste des privilèges et des autorisations associés à cette commande, voir la commande 'lssecattr ou la sous-commande 'getcmdattr