Ubuntu下右键“发送到其它电脑”


首先,如果系统正常的,那么在最新的Ubuntu 10.04之下,右键发送到U盘上、连接到电脑上的蓝牙设备、挂载的其它电脑上共享文件夹、用电子邮件发送、以及发送给CD/DVD创建器等,这些功能都有。

当我们选中文件,右键菜单中会有一个“发送到…”的项,点了之后,你会看到一个窗口,“目的”项下面有“电子邮件”下拉菜单,不要以为它只是通过电子邮件发送,它实际上有上面我说的所有功能。

只是我们希望发送到U盘独立出来,还有希望有右键可以在局域网中直接传东西到另一台电脑上。

我们利用命令或脚本,很简单就可以实现在右键中添加一个“发送到其它电脑上”的选项,方便局域网内用户传东西到另一台电脑。

添加右键菜单项,比较简单的有两种方式:一种是用nautilus-scripts实现的,另一种是nautilus-actions。

传输方式:采用ssh,也就是用scp命令。

准备工作就是在要传过去的电脑上装上ssh。如果可能,最好配置成无密码访问,但是不配置也没关系,当让你输入密码时输入就可以了。

1.nautilus-scripts方式

这个东西好像是Ubuntu默认的?

把脚本放到~/.gnome2/nautilus-scripts目录下就行了

脚本内容:

#!/bin/bash

names=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed 's/\n/ /g' )

cmd="/usr/bin/scp -r $names 用户名@IP或主机名:"

gnome-terminal --title=$title --hide-menubar --geometry 100x5+440+200 -x bash -c "$cmd;sleep 3s"

名字自己取。

保证这个文件是可执行的:右击-->属性-->权限,把 充许执行那个项选上。

要求:装有gnome-terminal(默认的Ubuntu终端)。

优点:可以传送多个文件,也可以传送文件夹,www.bkjia.com对于大文件或文件夹可以显示传送速度和进度。

缺点:在右键菜单的“脚本”子目录中;文件名中不能有空格;提示、速度、进度等信息显示在终端中,有的人可能不喜欢。

用zenity的话反正我是没搞定那个进度条和速度,所以干脆用终端去显示。

同样的道理可以搞定“发送到U盘”。这个有别人用zenity实现的脚本压缩包:

解压出来,同样,放到~/.gnome2/nautilus-scripts目录下并保证可执行就可以。

不过它对于大文件,没有进度和速度显示,很不爽。

不过用命令cp复制文件的时候,本身是没有速度和进度提示的,所以还是要自己实现。不如干脆用系统默认的或者这个就凑合先用了。

2. nautilus-actions

这个软件包是需要安装的。

sudo apt-get install nautilus-actions

然后就可以点 系统-->首选项-->Nautilus动作配置打开图形化的管理界面。

剩下的自己去摸索吧。

最重要的是实现scp的命令(Command):/usr/bin/scp

参数(Parameters):%f 用户名@ip或主机名

相关内容