Shell脚本奇怪的问题

时间:2016-05-11 18:42:18

标签: linux bash shell

我编写了以下shell脚本。它在主目录中运行良好,但现在我已将此文件移动到另一个文件夹,当尝试运行此文件时,它会提供: not a valid identifier error..

#!/bin/bash
echo "Specify environment(DEV,QA,PROD)"
read environment
upperString="${environment^^}"
export HYBRIS_OPT_CONFIG_DIR=$HOME/hybris5.7/hybris/bin/custom/rockport-shop/Configurations/Environments/config-"$upperString"
echo "Added Configuration ... "

如何找到问题?

2 个答案:

答案 0 :(得分:1)

您的问题数据不完整,但我愿意打赌,即使您输入此处:

export HYBRIS_OPT_CONFIG_DIR=$HOME/hybris5.7/hybris/bin/custom/rockport-shop/Configurations/Environments/config-"$upperString"

你实际上有

export $HYBRIS_OPT_CONFIG_DIR=$HOME/hybris5.7/hybris/bin/custom/rockport-shop/Configurations/Environments/config-"$upperString"

错误很可能来自导出,如果它没有告诉您哪个标识符无效,则标识符丢失或扩展为null。在这种情况下,您的未设置变量很可能会扩展。从HYBRIS中删除$

答案 1 :(得分:1)

如果您使用dos环境转移它,请执行dos2unix。

dos2unix script_name

如果您在系统中找不到dos2unix命令,请安装dos2unix软件包。