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

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

我在文件中添加了以下行.bashrc

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

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

midos.desktop 文件:

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

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

答案1

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

Exec=bash -ic "midos"

这是因为~/.bashrc文件的别名会起作用仅有的 在一个bash 交互式 shell-i在这种情况下使用选项来启动 bash 交互)。

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

答案2

如果 GUI 知道你的 shell,那我会非常惊讶。你应该将完整路径放在桌面文件中:

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

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

答案3

很少有解决方法。

#!/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

此后它应该可以按照您希望的方式工作。

相关内容