Функция внутри case в Bash выдает ошибку
#!/bin/bash
echo -n "введите PREFIX: "
read Slov # в переменную Slov попадает слово которое ввел пользователь
Prefix=("$Slov") # в этой переменной храниться слово для сравнения
case $Prefix in
function menu { # функция которая выводит меню для пользователя
for i in 1; do
if [[ "$Slov" = "$Prefix" ]]; then #здесь мы сравниваем введенное слово с тем что должно быть
#echo "cool" # программа может продолжать работать
echo "Введите 0: программа выполнит все действия"
echo "Введите 1: программа выполнит только 1 действие - создаст с 100 файлов с рамдомными 4-ч значными числами"
echo "Введите 2: программа выполнит только 2 действие - выдаст сумму первых 50 чисел и вторых 50 чисел, а такще покажет како"
echo "Введите 3: программа выполнит только 3 действие - программа скажет в каком файле лежит самое большое и самое маленькое"
else
exit 1 #в случае если слово введено неверно скрипт полность прекращает работу
fi
echo -n "введите номер операции: " #здесь мы вводим номер операции которую хотим выполнить
read Nomer
}
case $Nomer in
"0")
# Выполняем разом все действия
new_dir
nomer_1
;;
esac
esac
function new_dir { #функция которая создает директорию
YMD=$(pwd)/$(date +%Y-%m-%d)
mkdir -p $YMD
function nomer_1 { # функция которая создает 10 файлов в каждом из которых содержится 4-х значное число
for i in {1..100}; #создаем файлы
do echo $(( $RANDOM % 8999 + 1000 )) > $YMD/File$i; done #рандомно создаем числа сохраняем их в вновь созданный файл
cat $YMD/* | while read y #просмотр содержимого файлов из папки
do
echo "$y" >> $YMD/s #выводит содержимое на экран, сохраняем все числа из созданных файлов в файл s
done
}
echo "$y"
Сама ошибка:
./AAA: line 9: syntax error near unexpected token menu' ./AAA: line 9: function menu {'
Не могу понять почему не срабатывает меню, в чем причина ? Как это исправить ?