web-dev-qa-db-fra.com

option compresser et envoyer par e-mail en un clic droit

J'utilise Ubuntu 15.04 avec le gestionnaire de fichiers Nemo.

Comment puis-je activer une option de clic droit qui compresse les fichiers dans une archive Zip et les joint à un nouveau courrier électronique dans Thunderbird?

1
saravanabawa

Créez un script (.nemo_action) pour ce faire, ici vous pouvez trouver un exemple de syntaxe correcte.

Lorsque vous avez terminé votre script, ajoutez-le à nemo-actions pour le rendre accessible par un clic droit. Vous devez l'ajouter à $HOME/.local/share/nemo/actions/

Le script doit avoir .nemo_action extension

Vous devez maintenant créer un script pour la compression et le courrier:

Ajoutez la nécessité au script:

Pour compresser en utilisant Zip par exemple:

Zip -r attach.Zip attachFiles

Maintenant, joignez-le à un nouveau courrier dans Thunderbird:

Thunderbird -compose "attachment='/path-to- attach.Zip'"

Donc ce script sera appelé par le nemo_action un

Quelques liens utiles:

2
Maythux

Vous avez besoin de deux scripts pour cela: le script d'action Nemo et le script qui fera le travail: (Eh bien, en fait, un serait suffisant, mais cela rendrait la maintenance très ennuyeuse)

Le script d'action pour le clic droit devra aller dans un répertoire très spécifique:

~/.local/share/nemo/actions/compress-and-mail.nemo_action:

Comme il ne se développe pas ~ ou $HOME, vous devrez donner un chemin complet.

[Nemo Action]
Name=Compress and E-Mail
Comment=Zip-compress files and send them with Thunderbird
Icon-Name=Thunderbird
Exec=/home/saravanabawa/.local/nemo_mail_compress.sh %F
Selection=notnone
Extensions=any
EscapeSpaces=true

L'autre script sera un script bash pour compresser les fichiers sélectionnés, attacher l'archive temporaire à un nouveau message et le supprimer dès la fermeture de Thunderbird. Le fichier devra se trouver à l'emplacement que vous avez spécifié dans le Exec= ligne dans le script précédent:

#!/usr/bin/env bash
ATT=$(mktemp /tmp/attachment.XXXXX.Zip)             #Generate temp file
rm $ATT                                             #Remove temp file
Zip -rj $ATT $@                                     #Compress files
Thunderbird -compose "attachment='file://${ATT}'"   #Attach Zip to message
rm $ATT                                             #Delete archive when done

Oui, je crée d'abord un fichier temporaire puis le supprime à nouveau. De cette façon, un nom de fichier est généré, mais Zip ne se plaint pas que le fichier n'est pas une archive Zip.

Le script que j'ai créé vous permet de joindre plusieurs fichiers et répertoires. En raison de certaines limitations, il est possible de compresser le chemin entier (l'archive prendra le chemin entier comme nom, contenant éventuellement l'arborescence de répertoires de / à tous les fichiers compressés) ou à omettre tous les répertoires, c'est-à-dire que tous les fichiers seront au niveau racine. Des noms de fichiers en double dans différents répertoires empêcheront le programme de fonctionner correctement (je n'utilise jamais Zip, je ne sais pas comment il réagira). Si vous souhaitez le premier comportement, supprimez le commutateur j de la commande Zip, sinon laissez-le là.


PS: les destinataires peuvent être suspects s'ils reçoivent un e-mail avec une pièce jointe appelée attachment.JgHdI.Zip (nom généré par mktemp). Vous pouvez donc renommer l'archive dans Thunderbird.

Une autre option serait de rechercher un nom d'archive, par ex. en utilisant Zenity. Un script adapté pourrait ressembler à ceci:

#!/usr/bin/env bash
ATT="/tmp/$(zenity ---entry --title='Enter file name' --text='Please name the attachment archive').Zip"
Zip -rj $ATT $@
Thunderbird -compose "attachment='file://${ATT}'"
rm $ATT
1
s3lph

Pour Thunderbird dans Ubuntu 16.10 pour Nemo 3.20, j'ai adapté cette solution: http://www.badpenguin.org/nemo-action-send-to-email

  • aller à /usr/share/nemo/actions
  • ouvrir en tant que root (dans Nemo)
  • copier un exemple de script
  • renommer en: Thunderbird.nemo_action
  • ouvrez-le et insérez le contenu suivant:

    [Nemo Action]
    Name=Attach to Email
    Comment=Attach to Email
    Exec=Thunderbird -compose to=,"attachment='%U'"
    Icon-Name=Thunderbird
    Selection=notnone
    Extensions=nodirs;
    Separator=,
    EscapeSpaces=false
    
  • fermer nemo: nemo -q

  • en cliquant avec le bouton droit sur un fichier dans Nemo, vous trouverez maintenant "Attach to Email" dans le menu!
0
Consumology