我對shell腳本非常陌生,我一直在努力處理下面的shell腳本。我發佈了腳本和我在下面用於考慮的命令,請幫我解決我犯的錯誤。Shell腳本錯誤
#
#
#
DBG=0
RLS=0
ALL=0
CLN=0
print_help_uu()
{
echo "Usage: $0 -D -R -A -C ";
echo "Where -C clean the debug project builds";
echo " -D to build in DEBUG config";
echo " -R to build in RELEASE config";
echo " -A to build in both configs";
return
}
#
# Main procedure start here
#
# Check for sufficent args
#
if [ $# -eq 0 ] ; then
print_help_uu
exit 1
fi
#
# Function to clean the project
#
clean()
{
if ["$DBG"="1"]; then
echo "Cleaning debug"
if ["$RLS"="1"]; then
echo "cleaning release + debug"
else
echo "This is bad"
fi
fi
if ["$RLS"="1"]; then
echo "Cleaning release "
fi
return
}
while getopts "DRAC" opt
do
case "$opt" in
D) DBG=1;;
R) RLS=1;;
A) DBG=1;RLS=1;;
C) CLN=1;;
\?) print_help_uu; exit 1;;
esac
clean
done
我發佈了我用來運行它的命令以及使用這些命令時出現的錯誤。
----------
./BuildProject.sh -D
./BuildProject.sh: line 36: [1=1]: command not found
./BuildProject.sh: line 46: [0=1]: command not found
-----------
sh BuildProject.sh -D
BuildProject.sh: 63: [1=1]: not found
BuildProject.sh: 63: [0=1]: not found
-----------
sh ./BuildProject.sh -D
./BuildProject.sh: 63: [1=1]: not found
./BuildProject.sh: 63: [0=1]: not found
我試圖用很多方式解決它,並在發佈之前用google搜索了很多。但我所有的審判都是徒勞的。請告訴我我在做什麼錯誤,因爲我是shell腳本的新手。
在此先感謝。
這是Bash中的語法規則。所有的腳本/編程語言都不需要它,但對於某些語言來說,Bash就是這樣一種語言。 – 2009-12-28 10:34:28
謝謝埃米爾啓發我。 – Jabez 2009-12-28 10:57:55