使用超链接更改终端中的目录

问题描述

在指定目录中打开 gnome-terminal 很简单:

gnome-terminal --working-directory ~/dotfiles

创建超链接不是问题:

echo -e '\e]8;;file:///home/pmn/dotfiles\aThis is a link\e]8;;\a'

这会生成一个链接,当 Ctrl+Click ed 时,该链接会在正确的文件夹中打开文件资源管理器。

我想要做的是将这两件事结合起来,这样当我 Ctrl+Click 链接时,会弹出一个终端,该终端已经在请求的文件夹中。如果 current 终端我在更改目录中,那不会有问题,但在这种情况下,我仍然希望看到以前的终端输出,并且只执行与常规 {{1 }}(编辑:请注意,cd 文件夹只是一个示例,我有几个由脚本生成链接,我希望能够单击它们以在需要的地方快速打开终端)。

我尝试注册自定义应用程序:

~/dotfiles添加

(请注意,不推荐使用此文件,应使用 ~/.local/share/applications/mimeapps.list,如果您有正确执行此操作的提示,我会向他们开放)

~/.config/mimeapps.list

[Default Applications] x-scheme-handler/mygnometerm=mygnometerm.desktop 添加

~/.local/share/applications/mygnometerm.desktop

为 mime 数据库创建文件夹:

[Desktop Entry]
Type=Application
Terminal=false
Name=My Gnome Terminal
Exec=/bin/gnome-terminal --working-directory=%f
MimeType=x-scheme-handler/mygnometerm

更新 mime 数据库

mkdir -p ~/.local/share/mime/packages

确实有效:如果我右键单击文件资源管理器中的文件夹并选择 update-mime-database ~/.local/share/mime 作为要使用的应用程序,则会在正确的文件夹中打开一个终端。

如果我打印

My Gnome Terminal

然后点击链接,会弹出一个终端确实,但是在根文件夹中,运行时也是这样

echo -e '\e]8;;mygnometerm:///home/pmn/dotfiles\aThis is a link\e]8;;\a'

我只需要组合所有内容,但我尝试了很多组合gio open mygnometerm:///home/pmn/dotfiles 链接中的内容,但找不到合适的组合。

我也愿意接受其他方式来实现这种行为,但此时我很好奇如何以这种方式实现。

出于好奇,用例是我制作了一个简单的脚本来检查我的 repos 的状态,我想点击那些有事情要做的,而不必复制和粘贴路径。我想我至少会节省 5 秒!

干杯!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...