我具有此脚本的所有功能,执行脚本时,我需要使用EOF创建另一个脚本并通过第一个脚本打开它,但是当我使用eof创建文件时,我尝试编写该脚本的代码显示此错误:
./ skriptaTjeter.sh:第6行:[::预期为整数表达式
./ skriptaTjeter.sh:第9行:[::预期为整数表达式
./ skriptaTjeter.sh:第13行:[::预期为整数表达式
numer pozitiv ju lutem
我刚开始使用bash脚本,但我不明白自己做错了什么
cat > skriptaTjeter.sh <<EOF
#! /bin/bash
clear
echo Shkruani te ardhurat
read vlera
if [ "$vlera" -lt 5000 ]
then
echo nuk ka asnje takse
elif [ "$vlera" -ge 5000 ] && [ "$vlera" -le 30000 ]
then
tatimi=$((vlera*10/100))
echo shkalla tatimore eshte 10% : $tatimi
elif [ "$vlera" -gt 30000 ]
then
tatimi=$((vlera*20/100))
echo shkalla tatimore eshte 20% : $tatimi
else
echo numer pozitiv ju lutem
fi
EOF
./skriptaTjeter.sh
答案 0 :(得分:2)
$vlera
在运行cat
之前被扩展,因此您的脚本中的行类似
if [ "" -lt 5000 ]
要引用定界符,以便在此处文档中不发生参数扩展:
cat > skriptaTjeter.sh <<'EOF'
...
EOF