为什么找不到我的命令但在命令行中工作?

时间:2014-01-11 13:30:09

标签: linux bash shell path

这是我脚本的一部分:

read -p "[q] What is the meteor project's location? "
PATH=$REPLY
cd $PATH
cd src
echo $(pwd)
mrt bundle bundle.tar.gz

打印正确的工作目录。在控制台中输入mrt bundle bundle.tar.gz可以正常工作。 执行我的脚本,我得到meteor_bundle.sh: line 9: bash: command not found。可能是什么原因?

2 个答案:

答案 0 :(得分:4)

您选择的变量名称很差:PATH在Bash中有特殊含义:它用于指示Bash在哪里查找可执行程序。选择另一个名字(最好是小写,请参阅@Gordon的评论),它应该没问题。

答案 1 :(得分:3)

您应该使用mrt的完整路径,因为您更改了PATH的值。或者从第二行为变量选择另一个名称。

请参阅以下帖子,以准确了解PATH 环境变量的用途: