Я пытаюсь создать свой первый скрипт для использования операторов «если» в bash. Он объединяет 2 сценария, над которыми я работал, чтобы создать несколько копий файла, один с именами, добавленными в числовом виде, другой с помощью 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
Вот мой текущий код с добавленными "done" и пробелами в 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
=
в условиях тестирования, например:[ "$alpha" = "N" ]
. - person chepner   schedule 01.11.2013