2014-04-23 100 views
1

我正试图在Mac上使用脚本创建新的项目。对于这一点,我也跟着下面的步骤:命令在命令行中找到但在脚本中找不到

  1. 添加的工具和平台工具PATH在我.bash_profile
  2. 验证在外壳的android命令作品。
  3. 编写一个脚本来创建一个新项目。

这里是我写的剧本:在shell

NAME=$1 
PATH=$2 
PACKAGE=$3 

echo $1 
echo $2 
echo $3 

function create_new_android_project() 
{ 
android create project -n "$NAME" -t 7 -p "$PATH" -k "$PACKAGE" -a MainActivity 
} 


create_new_android_project 
echo 
echo "******** Complete!!!" 

android命令运行。但是当我运行脚本 sh script.sh project_name project_path package_name 它放弃了一个错误说android: command not found

回答

1

PATH变量对shell有特殊的含义。当你没有为它们提供一个完整的路径时,shell希望它包含一个以冒号分隔的目录列表,它可以查找程序。

要解决您的问题,请在程序中使用除PATH之外的其他名称。

作为一般的建议,我邀请您使用更强的纪律报价参数和避免echo命令:

  1. 还有就是为什么变量名不应双引号之间出现几个原因。因此,除非您想要实现某些特殊功能,否则应始终使用双引号来控制变量扩展。

  2. 更喜欢printf超过echo,因为它更容易使用,更可靠,更便携(也是明显的赢家)。