如何在桌面上创建 URL 的快捷方式?我想在 Firefox 或 Chrome 中使用它们。
如果复制和粘贴不起作用。
我必须使用什么脚本?
答案1
在 Ubuntu 中,URL 快捷方式存储在.desktop 文件如下(例如):
[Desktop Entry]
Encoding=UTF-8
Name=Link to Ask Ubuntu
Type=Link
URL=http://www.askubuntu.com/
Icon=text-html
您可以将链接从 Firefox 或 Chrome 拖放到桌面或您有权限保存文件的任何其他文件夹中。
笔记:链接将出现在您的桌面或文件资源管理器(即 caja)中行中的名称下Name=…
,而不是其实际文件名。并且没有任何….desktop
扩展名。
答案2
该解决方案也是多平台的:
创建一个新的简单文本文件,以 .html 为扩展名,并指定您想要的名称。
使用您想要的程序编辑文件并添加此内容:
<html> <head> <meta http-equiv="refresh" content="0; url=https://askubuntu.com" /> </head> <body> </body> </html>
保存文件。
答案3
我需要类似的东西,但 Gnome(现在?)要求*.desktop
文件位于特定位置,因此直接使用它们无法解决我的问题,因为我想要的主要是项目文件夹中的 Web 链接以供参考。而且它们也不兼容跨平台。
最终我转向了微软的.url
文件,它们很容易构建,如下所示:
[InternetShortcut]
URL=https://askubuntu.com
(我读到尾随换行符很重要,可能是\r\n
为了与 Windows 兼容)
并创建了一个 .desktop 规范来处理它们:
[Desktop Entry]
Type=Application
Name=URL Handler
MimeType=application/x-mswinurl;
Exec=bash -c "set -e; P=$(python3 -c 'import configparser,sys,urllib.parse; c=configparser.ConfigParser(); c.read(sys.argv[1])\ntry:\n u=c[\"InternetShortcut\"][\"URL\"]\n if not urllib.parse.urlparse(u).scheme in [\"http\",\"https\",\"ftp\",\"ssh\"]: raise Exception(\"Invalid scheme in URI\")\n print(u)\nexcept Exception as e: print(e,file=sys.stderr); exit(3);' %f); xdg-open \"$P\""
将其放入文件中~/.local/share/applications/<whatever>.desktop
。在我的例子中,Gnome 立即将*.url
文件绑定到它们。
这需要xdg-utils
包(对于xdg-open
,如果您有桌面环境它很可能在那里)和python 3。
我真的不想使用 Python,但对这样的事情进行未经检查的解析并不适合我。Python 脚本的最大部分是为了避免无限循环和其他危险——以防有人产生奇怪的想法并将文件名放入文件中。它确保方案存在并且是、、.url
之一。我猜这个列表可以轻松扩展,但我实际上不知道 Windows 支持哪些方案。http(s)
ftp
ssh
答案4
此外,与所有涉及命令行的解决方案一样,人们可以在类似 Chromium 的浏览器中通过鼠标分三步完成此操作:
- 点击菜单(右上角的三个垂直点)。
- 点击“更多工具…”
- 点击“创建应用程序快捷方式”在桌面上创建快捷方式
- (取决于您的配置):您可能需要右键单击快捷方式并添加执行权限
随后,一个.desktop
文件将被添加到创建者的桌面。