当前位置: 首页>>技术教程>>正文


我的 .bashrc 别名未在 .desktop 文件中运行

,

问题描述

我已将以下行添加到 .bashrc 文件中:

alias midos="sh /home/erkanmdr/Belgeler/midos/midos.sh"

此命令在终端和 tty 中运行良好。\n但在我的 .desktop 快捷方式文件中不起作用。

midos.desktop 文件:

[Desktop Entry]
Name=MiDoS
Exec=midos
Icon=/home/erkanmdr/Belgeler/midos-128.png
Terminal=true

如何在 .desktop 快捷方式文件中执行我的 midos 命令?

最佳方案

虽然其他答案为您的问题提供了一个很好的解决方法,但为了回答您的问题,在您的情况下,在 .desktop 文件中使用别名的正确方法是:

Exec=bash -ic "midos"

这是因为 ~/.bashrc 文件中的别名只能在 bash 交互式 shell 中\n 工作(在这种情况下使用 -i 选项来启动 bash 交互式)。

如果另一个用户想要使用同一个 .desktop 文件,那么他必须也定义了那个别名。

次佳方案

如果 GUI 对您的 shell 有所了解,我会感到非常惊讶。您应该将完整路径放在桌面文件中:

Exec=/home/erkanmdr/Belgeler/midos/midos.sh

并确保您的脚本是可执行的。

第三种方案

小解决方法。

将此 #!/bin/bash 添加到脚本的第一行(如果尚不存在)。

例如你之前的脚本:

sometext1
sometext2
sometext3
sometext4

您编写脚本后:

#!/bin/bash
sometext1
sometext2
sometext3
sometext4

现在将您的脚本复制到 /usr/local/bin ,并使其可执行:

sudo cp /home/erkanmdr/Belgeler/midos/midos.sh /usr/local/bin/midos
sudo chmod +x /usr/local/bin/midos

之后它应该可以按您的意愿工作。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/13401.html,未经允许,请勿转载。