Comment envoyer pour imprimer (plusieurs) fichiers sélectionnés dans un répertoire au lieu d'un par un?

10

J'utilise Ubuntu 12.04 et j'ai réussi à installer mon imprimante Wi-Fi, mais ma question est: comment imprimer plusieurs fichiers à la fois? Je veux dire, j'ai de nombreux fichiers PDF ou texte dans un dossier et je veux les envoyer directement à l'imprimante au lieu d'ouvrir un par un dans la visionneuse de fichiers, puis d'imprimer et de répéter tout le processus tant de fois /:

Je ne vois même pas d'option Imprimer lorsque je clique avec le bouton droit sur le fichier ou dans le menu Fichier.

Je vous remercie!

oscar
la source

Réponses:

4

Créez le fichier: ~ / .local / share / applications / print.desktop Insérez:

[Desktop Entry]
Encoding=UTF-8
Name=Print Directly
Comment=Print file directly with default printer.
Exec=lp %f
Type=Application
Icon=/usr/share/pixmaps/gnome-applets.png
MimeType=text/plain;text/pdf;application/pdf;application/x-pdf

Faites un clic droit sur n'importe quel fichier pdf, dans la vue "Ouvrir avec ..." la liste étendue des applications disponibles pour les fichiers pdf. Recherchez l'entrée "Imprimer directement" et ajoutez l'association. A partir de maintenant, vous pouvez cliquer avec le bouton droit sur n'importe quel fichier (ou groupe) pdf et les faire imprimer avec la commande lp sur votre imprimante par défaut . Si vous souhaitez faire des expériences, installez l'imprimante CUPS-PDF et définissez-la par défaut dans les paramètres des imprimantes.

sudo apt-get install cups-pdf

Vous aurez le fichier de test "imprimé" dans le dossier ~ / PDF.

mythsmith
la source
4

Je l' ai fait un script qui envoie les fichiers souhaités à l'imprimante par défaut: vous devrez peut-être modifier pour sélectionner le folderque vos fichiers sont et exécuter une fois pour .pdfet pour .txt:
find /home/mike/KeyGuides/ -type f -iname '*.txt' -print0 | while IFS= read -r -d '' f; do lpr "$f"; done. Cela fonctionne comme je viens de le tester; assurez-vous simplement que l'imprimante souhaitée est configurée par défaut.

Si vous avez des problèmes, je vais voir si je peux le modifier si nécessaire. (Vous pouvez utiliser d'autres options pour lpr si vous en avez besoin -voir man lpr) Cela devrait fonctionner pour la plupart des imprimantes- c'est réussi avec mon Canon IP4700.

Cette version du script déplace également chaque document imprimé vers un répertoire (que vous devez avoir créé précédemment), de sorte que lorsque le script est exécuté, seuls les nouveaux documents sont imprimés:

find /home/mike/Duck/ -type f -iname '*.txt' -print0 | while IFS= read -r -d '' f;
 do lpr "$f" && mv "$f" /home/mike/Duck/printed/ ; done

la source
Salut: merci pour vos conseils, mais que faire si je veux imprimer de nombreux fichiers mais pas tous les fichiers de ce répertoire? C'est ce que j'aimerais faire, car lorsque de nouveaux fichiers sont enregistrés dans ce répertoire, j'imprime uniquement les nouveaux fichiers. J'espère que je l'ai bien expliqué :)
Oscar
C'est vraiment une question différente de la question d'origine, mais je vais voir si je peux faire quelque chose avec le script - il pourrait être difficile d'imprimer simplement ceux qui ne sont pas déjà imprimés; bien que ce que nous pourrions faire est simplement d'ajouter une commande pour déplacer chaque document vers un dossier spécifié après son impression. Il devrait être possible de l'insérer dans la boucle while.
Veuillez noter que lpr ne fonctionne que sur du texte brut. Vous devrez utiliser un autre outil qui envoie un travail d'impression à CUPS s'il s'agit de PDF, par exemple.
Cumulus007
Salut, pas une question si différente, c'est pourquoi j'ai mis "plusieurs" et "sélectionné" dans le nom de la question, afin que cela puisse être tous ou certains d'entre eux: D OK, j'espère que vous trouverez une solution pour y parvenir. Merci beaucoup!
Oscar
1
lpr fonctionne avec pdfs - la commande lpr bash_FAQ.pdf l'imprime parfaitement.
0

Ce n'est pas une solution directe pour le système d'exploitation Ubuntu Linux:

  • Essayez d'utiliser le service de Google : Google - Cloud Print . Je ne sais pas s'il existe une option multitâche en une étape, cependant

Aussi, une solution plus complexe:

Installer le nautilus-actionspackage

Exécutez le menu Nautilus Actions Settingsfrom System> Preferenceset ajoutez une action:

Onglet Action

Objet Nautilus

Étiquette de contexte: Imprimer

Afficher l'élément dans le menu contextuel de sélection

Afficher l'élément dans le menu contextuel de l'emplacement (non nécessaire)

Propriétés de l'action: activé

Onglet de commande

Étiquette de profil:

Commande par défaut:

Chemin: lp

Paramètres:% M (cliquez sur le bouton de légende pour voir des informations supplémentaires)

Modifiez les informations des autres onglets comme vous souhaitez que votre nautilus se comporte.

Enregistrez l'action, redémarrez nautilus.

Votre menu contextuel affichera "Imprimer" ...

Source: UbuntuForums

En utilisant une méthode simple:

Ouvrez un terminal et tapez lpret placez un espace devant lui. Faites ensuite glisser et déposez les fichiers que vous souhaitez imprimer sur le terminal.

David M. Sousa
la source
Salut, j'ai ajouté l'action et la commande dans Nautilus comme indiqué, le menu apparaît lorsque vous cliquez avec le bouton droit sur le fichier mais rien ne se passe /: La méthode du terminal a fonctionné, mais lors de l'impression des fichiers pdf, la page imprimée résultante a d'autres polices et pas celles que vous voir lors de l'ouverture avec la visière.
Oscar
Désolé, mais ce n'est pas ma propre connaissance. J'ai rongé certains sites pour récupérer les informations que je viens de publier. Vous devriez vérifier, sur le cas Nautilus, la documentation du lp. Il ne cible peut-être pas votre imprimante.
David M. Sousa
0

Les versions récentes de CUPS ont ajouté la possibilité d'imprimer directement des fichiers PDF. 11.10 et les versions plus récentes (et peut-être plus anciennes) ont cela.

Une autre approche (que j'utilise avec mon package d'émulateur d'impression recto verso) consiste à utiliser Imprimer dans un fichier pour tous vos travaux d'impression et à les placer dans un dossier qui devient effectivement votre file d'attente d'impression personnelle. Une fois qu'ils sont là, vous pouvez imprimer tout ou partie d'entre eux lorsque vous le souhaitez et les supprimer lorsqu'ils ont terminé.

Cela a l'avantage supplémentaire de vous permettre de réexécuter des travaux après un bourrage papier, etc. sans les recréer à partir de zéro. Il vous permet également de continuer à travailler sans vous arrêter pour gérer votre imprimante.

Si vous le souhaitez, vous pouvez écrire un petit script qui s'exécutera en arrière-plan et commencera à imprimer les éléments qui apparaissent dans votre file d'attente d'impression. Si vous effectuez l'une de ces opérations, vous pouvez nommer vos travaux d'impression afin qu'ils soient triés dans la file d'attente dans l'ordre dans lequel vous souhaitez qu'ils s'impriment. J'utilise simplement 00 ... 99 pour les noms.

Pour les fichiers texte, recherchez ceux qui peuvent avoir de longues lignes. CUPS (au moins par défaut) n'encapsulera pas les lignes pour vous ou ne configurera pas de belles marges de page.

Mon système d'impression recto verso fait beaucoup plus que ce que vous demandez, mais pourrait vous donner quelques idées. Il a notamment deux petits scripts d'aide dprint et dprintm qui prennent le texte et l'apprivoisent un peu avant de l'envoyer à l'imprimante.

http://sourceforge.net/projects/duplexpr/
Joe
la source
0

Je sais que c'est vieux - mais la façon de le faire est maintenant révisée comme je l'ai découvert aujourd'hui:

vous aurez besoin de filemanager-actions installé - il était déjà sur mon système

sudo apt-get install filemanager-actions

Obtenez ensuite des actions nautilus

sudo add-apt-repository ppa:dr3mro/nautilus-actions-extra
sudo apt-get update
sudo apt-get install nautilus-actions

Ouvrez FileManager-Actions et créez une nouvelle action comme ci-dessus:

Action Tab
    Nautilus Item
        Display item in selection context menu (tick)
        Display item in location context menu (tick)
        Context Label : Print
        Display item in the toolbar (tick)
        Use same label for icon in the toolbar (tick)

Command Tab
    Profile
        Label: Default profile
    Command
        Path: lp
        Parameters: %f
        Working directory: %d

Modifiez les informations des autres onglets comme vous souhaitez que votre nautilus se comporte.

Enregistrez l'action, redémarrez nautilus.

Votre menu contextuel affichera "Imprimer" ...

quelques liens m'ont aidé: LibreOffice Print clic droit Print

Matthew Hudson
la source
-1

Ou utilisez Ruby :-)

sudo apt-get install ruby
irb
Dir.glob('*.*').each{ |f| `lp '#{ f }'` }
msa.im
la source