设想是这样的,点击一个链接后,执行某个脚本里头的命令。
在这个脚本里头,
先用wget下载该链接的内容——问题就在这,怎么把链接的地址作为参数传递给wget,这个脚本怎么得到我鼠标点击的链接的网址?
然后再对下载下来的东西进行一堆的后续处理。
怎么把鼠标所点击的链接的地址作为变量传给脚本
-
- 帖子: 614
- 注册时间: 2006-11-15 14:14
- jarryson
- 帖子: 4002
- 注册时间: 2005-08-14 19:53
Re: 怎么把鼠标所点击的链接的地址作为变量传给脚本
必须浏览器能执行本地程序。
比如opera就可以修改右键菜单调用外部程序,传递的参数也是可以的。
除此之外除非是浏览器插件,否则无法监视
比如opera就可以修改右键菜单调用外部程序,传递的参数也是可以的。
除此之外除非是浏览器插件,否则无法监视
-
- 帖子: 614
- 注册时间: 2006-11-15 14:14
Re: 怎么把鼠标所点击的链接的地址作为变量传给脚本
谢谢jarryson。jarryson 写了:必须浏览器能执行本地程序。
比如opera就可以修改右键菜单调用外部程序,传递的参数也是可以的。
除此之外除非是浏览器插件,否则无法监视
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 怎么把鼠标所点击的链接的地址作为变量传给脚本
我一般用 FireGuesture 来弄,类似的脚本(不记得是从哪里学来的了)
当然,FireGuesture 不是必须的。
代码: 全选
const EXEC_PATH = "/usr/bin/google-chrome";
var linkURL = FireGestures.getLinkURL(FireGestures.sourceNode)||window.content.location.href;
var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
file.initWithPath(EXEC_PATH);
if (!file.exists()) {
alert("File does not exist: " + EXEC_PATH);
return;
}
var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
try {
var args = [linkURL];
process.init(file);
process.run(false, args, args.length);
} catch (ex) {
alert("Failed to execute: " + EXEC_PATH);
}
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系:
Re: 怎么把鼠标所点击的链接的地址作为变量传给脚本
写脚本,选中链接,设快捷键,脚本里面用xsel取选中内容,通过参数传递给wget
可以用
xterm -e wget "$(xsel)"
的方式执行。
可以用
xterm -e wget "$(xsel)"
的方式执行。
代码: 全选
] ls -ld //