红联Linux门户
Linux帮助

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

发布时间:2012-05-26 10:48:10来源:Ubuntu社区作者:linux使用者

  首先,如果系统正常的,那么在Ubuntu下,右键发送到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终端)。


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


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


  用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或主机名