我正在尝试构建我的第一个脚本,以便在bash中使用“if”语句。它结合了我用于创建文件的多个副本的两个脚本,一个名称以数字形式附加,另一个使用A-Z。
我尝试了很多更改,但如果没有错误消息,我绝对无法让它工作
./ cpmany.sh:18行:意外标记
elif' ./cpmany.sh: line 18:
elif附近的语法错误[$ alpha =“A”];然后“
这是我原来的非工作代码:
#!/bin/bash
set -x
echo "input file source"
read INPUT
echo "Alphabetical or Numerical"
read alpha
if [ $alpha=="N" ]; then
echo "start of range"
read x
echo "end of range"
read y
for ((i=x; i<=y; i++)); do cp "$INPUT" "$INPUT$i";
elif [ $alpha=="A" ]; then
for i in {a..z}
do
echo "$i"
cp "$INPUT" "$INPUT$i";
else
echo "error in selection";
fi
exit 0
这是我当前的代码,在if [$ alpha =“N”]中添加了“完成”和空格
#!/bin/bash
echo "input file source"
read INPUT
echo "Alphabetical or Numerical"
read alpha
if [ $alpha = "N" ]; then
echo "start of range"
read x
echo "end of range"
read y
for ((i=x; i<=y; i++)); do cp "$INPUT" "$INPUT$i";
done
elif [ $alpha = "A" ]; then
for i in {a..z};
do
echo "$i"
cp "$INPUT" "$INPUT$i"; done
else
echo "error in selection";
fi
done
exit 0
答案 0 :(得分:3)
您忘记使用for
关闭done
循环。