Pessoal,
Gostaria de fazer um método que leia um arquivo para montar um case(já explico);
Tenho um arquivo onde tem o nome do arquivo que deve abrir e o path dele
separado por ; ex:
#Cat editor.txt
usuarios;/temp/user.txt
computadores;/temp/comp.txt
Essa função teria que ler o arquivo e montar o case conforme abaixo;
##############################################
# MENU #
#--------------------------------------------#
#--------------------------------------------#
1 - usuario
2 - computadores
0 - voltar
#--------------------------------------------#
#--------------------------------------------#
##############################################
1) usuarios ;;
2) computadores ;;
0) editor ;;
*) Opcao invalida! ; clear ; echo Opcao invalida!; editor ;;
usuarios() {
nano /temp/user.txt
editor
}
computadores() {
nano /temp/comp.txt
editor
##############Abaixo um script que estou tentando fazer, consegui fazer um
script que gera o resultado que preciso mas quero 1 script que leia esse
arquivo txt e gere as opções;
editor(){
echo "##############################################"
echo "# MENU #"
echo "#--------------------------------------------#"
echo "#--------------------------------------------#"
i=1
while read menu_list
do
menu=$(echo $menu_list | cut -d ";" -f 1)
echo " $i" - "$menu"
i=$(($i+1))
done < editor.txt
echo " 0 - Voltar "
echo "#--------------------------------------------#"
echo "#--------------------------------------------#"
echo "##############################################"
echo -n "Digite uma opcao:"
read opcao
clear
case $opcao in
i=1
while read menu_list
do
menu=$(echo $menu_list | cut -d ";" -f 1)
$i) $menu ;;
i=$(($i+1))
done < editor.txt
0) editor ;;
*) "Opcao invalida!" ; clear ; echo Opcao invalida!; editor ;;
esac
}
i=1
while read menu_list
do
menu=$(echo $menu_list | cut -d ";" -f 1)
path=$(echo $menu_list | cut -d ";" -f 2)
$menu() {
nano $path
clear
editor
}
i=$(($i+1))
done < editor.txt
#Executa metodo Editor
editor