右键单击以压缩和发送电子邮件选项

右键单击以压缩和发送电子邮件选项

我正在使用带有 Nemo 文件管理器的 Ubuntu 15.04。

如何启用右键单击选项,将文件压缩为 zip 存档并将其附加到 Thunderbird 中的新电子邮件?

答案1

创建一个脚本(.nemo_action)来执行此操作,这里您可以找到正确语法的示例。

完成脚本后,将其添加到nemo-actions以便可以右键单击。您必须将其添加到 $HOME/.local/share/nemo/actions/

脚本必须有.nemo_action扩展名

现在您必须制作用于压缩和邮寄的脚本:

在脚本中添加需要:

例如使用 zip 进行压缩:

zip -r attach.zip attachFiles

现在将其附加到 thunderbird 中的新邮件中:

thunderbird -compose "attachment='/path-to- attach.zip'"

nemo_action因此这个脚本将被

一些有用的链接:

答案2

为此,您需要两个脚本:Nemo 操作脚本和实际执行工作的脚本:(嗯,实际上一个就足够了,但这会使维护非常烦人)

右键单击的操作脚本必须进入一个非常特定的目录:

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

由于它不会扩展~$HOME,因此您必须提供完整路径。

[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

另一个脚本是 bash 脚本,用于压缩所选文件、将临时存档附加到新邮件并在 Thunderbird 关闭时立即删除它。该文件必须位于您在Exec=上一个脚本中指定的位置:

#!/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

是的,我先创建一个临时文件,然后再将其删除。这样就生成了一个文件名,但zip不会抱怨该文件不是 zip 存档。

我创建的脚本允许您附加多个文件和目录。由于某些限制,可以压缩整个路径(存档将采用整个路径作为名称,最终包含从到/所有压缩文件的目录树)或省略所有目录,即所有文件都将位于根级别。不同目录中的重复文件名将导致程序无法正常工作(我从不使用 zip,我不知道它会如何反应)。如果您希望采用第一种行为,请j从 zip 命令中删除开关,否则请将其保留在那里。


附言:如果收件人收到带有附件的电子邮件,他们可能会产生怀疑attachment.JgHdI.zip(名称由 mktemp 生成)。因此,您可能需要在 Thunderbird 中重命名存档。

另一个选项是查询存档名称,例如使用 Zenity。改编后的脚本可能如下所示:

#!/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

答案3

对于 Ubuntu 16.10 中适用于 Nemo 3.20 的 Thunderbird,我采用了以下解决方案:http://www.badpenguin.org/nemo-action-send-to-email

  • /usr/share/nemo/actions
  • 以 root 身份打开(在 Nemo 中)
  • 复制示例脚本
  • 重命名为:thunderbird.nemo_action
  • 打开它并插入以下内容:

    [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
    
  • 关闭尼莫:nemo -q

  • 在 Nemo 中右键单击文件,您将在菜单中找到“附加到电子邮件”!

相关内容