1

场景:Ubuntu 18LTS 中的当前 Kate 版本指向其自定义版本(似乎不支持正则表达式搜索功能)。垃圾箱是:/usr/bin/kate

所需的解决方案:运行 Kate AppImage(具有正则表达式搜索/替换功能)。AppImage 当前位于~/Downloads.

问题:如何重定向系统以执行Kate的AppImage版本,而不是内置版本?

我可以简单地创建一个指向 AppImage 的链接/usr/bin吗?

4

2 回答 2

1

是的,看来你可以......即在我的情况下,我用指向 appimage 的链接替换了现有的 kate bin:

# 1st remove the existing kate binary
# (cp kate somewhere first if you want to keep a copy)
sudo rm /usr/bin/kate

# 2nd create a link in the system bin that points to the appimage
sudo link [directory where the appimage resides]/Kate.AppImage /usr/bin/kate

完毕!系统现在将在执行“kate”时执行 appimage(例如通过上下文菜单)。

==========================

更新...

上面的解决方案有点工作......它确实运行了appimage,但是通常传递给kate的参数(即要打开的文件)在硬链接中丢失了。

所以...更好的解决方案是创建一个简单的可执行 shell 脚本(在 /usr/bin 目录中名为“kate”)来执行 appimage:

#!/bin/sh
exec [directory where the appimage resides]/Kate.AppImage "$@"

这会将任何提供的参数传递给 appimage。

于 2019-03-28T18:31:36.253 回答
0

您可能希望(无论出于何种原因)将系统安装的 Kate 保留在/usr/bin/kate...

然后不要碰它。$HOME而是在您命名的目录中创建一个目录bin(根据您运行的 Linux 发行版,它可能已经存在)。

在该目录中,创建一个符号链接:

ln -sf ~/Downloads/kate.AppImage ~/bin/kate

这可能已经奏效了。如果没有,您必须将~/bin目录移动到路径的前面:

export PATH=${HOME}/bin:${PATH}  # if you use Bash

要永久修改它$PATH,请将同一行添加到${HOME}/.bashrc

于 2019-03-30T22:41:25.783 回答