当我输入这个命令时在终端窗口中,它按预期工作:
ifuse "/home/sadi/mnt"
但在 bash 脚本中使用时无效通过 .desktop 文件运行。
我可以做什么来使用它?
该命令(应该在指定文件夹中安装连接的设备)前面是mkdir -p "/home/sadi/mnt"
,后面是 ,nautilus --no-desktop --new-window "/home/sadi/mnt"
这两个命令在终端和 bash 脚本中都可以完美运行。
type ifuse
输出= /home/sadi/usr/bin/ifuse
,我的.bashrc
:export PATH="${HOME}/usr/bin:${PATH}"
答案1
您已经在内部设置了 PATH ~/.bashrc
,但~/.bashrc
只有在启动 shell 是交互式的情况下才完全获取源代码。
通常有一个相当于以下内容的声明:
[ -z "$PS1" ] && return # If not running interactively, don't do anything
这将使您的 PATH 设置:
export PATH="${HOME}/usr/bin:${PATH}"
PS1
如果在非交互式脚本中使用测试之后放置,则根本无效。