Enviado em 31/05/2013 - 17:04h
Olá galera, estou com um trabalho da faculdade pra fazer e não estou conseguindo desenvolver. Tentei o máximo que deu mas não consigo compreender direito a lógica dos scripts, pois é um pouco diferente da lógica em C ou Java (dos quais não conheço muito, mas são mais fáceis do que o .bash).
#!/bin/bash
clear
$HOME/lista_backup.txt
$HOME/diretorios.txt
op=1
while [ ! $op -eq 8 ]; do
clear
echo "--------------------------------------------------------------------------------"
echo "|----------------------------Digite a opção desejada:--------------------------|"
echo "| |"
echo "|1- Montar um diretório compartilhado na rede. |"
echo "|2- Desmontar um diretório compartilhado na rede. |"
echo "|3- Exportar um diretório para ser compartilhado na rede. |"
echo "|4- Configurar diretório de backup. |"
echo "|5- Cadastrar um diretório na lista de backups. |"
echo "|6- Realizar o backup dos diretórios da lista de backups. |"
echo "|7- Listar quantos volumes foram gerados para o diretório da lista de backups. |"
echo "|8- Sair. |"
echo "| |"
echo "--------------------------------------------------------------------------------"
read op
case $op in
1) clear
echo "Entre com o ip: "
read ip
echo "Entre com o caminho do diretorio a ser mapeado: "
read dir_c
echo "Entre com o nome para o diretorio: "
read nome_dir
mount -t nfs -o rw $ip:$dir_c /mnt/$nome_dir
if [ $? -eq 0 ]; then
echo "Diretorio mapeado com sucesso!"
$dir_c >> $HOME/diretorios.txt
else
echo "Diretorio ja mapeado."
fi
echo "Aperte uma tecla para continuar..."
read
;;
2) clear
echo "cat $HOME/diretorios.txt"
echo "Selecione o diretorio a ser desmontado: "
read dir_d
umount $dir_d
if [ $? -eq 0 ]; then
echo "Diretorio desmontado com sucesso!"
else
echo "Impossivel de desmontar."
fi
echo "Aperte uma tecla para continuar..."
read
;;
3) clear
echo "Digite o diretorio para ser exportado: "
read dir_e
`$dir_e *(rw, sync)` >> /etc/exports
if [ $? -eq 0 ]; then
echo "Diretorio exportado com sucesso!"
else
echo "Erro desconhecido."
fi
echo "Aperte uma tecla para continuar..."
read
;;
4) clear # ???
echo "Digite o nome do diretorio de backup (diretorio remoto): "
read dir_nome
echo "Aperte uma tecla para continuar..."
read
;;
5) clear # ???
echo "Entre com o diretorio para adiciona-lo na lista de backups: "
read dir_bkp
$dir_bkp>>lista_backup.txt
echo "Aperte uma tecla para continuar..."
read
;;
6) clear
tot=`ls lista_bakcup.txt | wc -l`
while [ ! $tot -eq 0 ]; do
vol=`head $tot -n | tail 1 -n`
tar -cf $vol.tar $HOME/bkp_tar
tar -cfz $vol.gzip $HOME/bkp_gzip
if [ $? -eq 0 ]; then
echo "Volumes .tar e .gzip do diretorio $vol criados com sucesso!"
else
echo "Erro desconhecido no diretorio $vol."
fi
tot=$tot-1
done
echo "Aperte uma tecla para continuar..."
read
;;
7) clear # ???
tot=`ls lista_bakcup.txt | wc -l`
while [ ! $tot -eq 0 ]; do
vol=`head $tot -n | tail 1 -n`
ls $HOME/
tot=$tot-1
done
echo "Aperte uma tecla para continuar..."
read
;;
8) clear
echo "Deseja realmente sair?"
read res
case $res in
S|s|sim|SIM|Y|yes|YES) op=8
;;
N|n|nao|Nao|NO|no) op=0
;;
*) echo "Opcao invalida"
echo "Aperte uma tecla para continuar..."
read
esac #fim do while 8
;;
9|1[0-2]) clear
echo "Opcao ainda nao implementada."
echo "Aperte uma tecla para continuar..."
read
;;
*) clear
echo "Opcao invalida."
echo "Aperte uma tecla para continuar..."
read
;;
esac #fim do case
done #fim do while
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Como atualizar Ubuntu 20.04 LTS para Ubuntu 24.04 LTS (2)
Liberar acesso a DVR externo (1)