scassiasantos
(usa Ubuntu)
Enviado em 26/10/2016 - 23:38h
msoliver escreveu:
scassiasantos escreveu:
Desejo criar um código com 3 opções sendo:
1: Listar bkp (verificar se existe a pasta bkp e verificar o conteúdo interno)
2: Copiar arquivos ( verificar se existe a pasta bkp, se nao tiver criar e copiar)
3: Leitura de arquivos (listar o conteúdo, pedir nome do arquivo e abrir o o arquivo desejado).
Para isso criei uma pasta bkp dentro de root e declarei a variável "diretorio".
Segue o código abaixo que fiz, podem me ajudar? Estou travada no primeiro case.
#!/bin/bash
diretorio= /root/bkp
arquivo= /etc/network/interfaces
echo “Olá, $USER!”
echo “ Escolha uma opção: 1- Listar os backups, 2- Cópia de arquivos ou 3- Leitura de arquivos”
read opção
case $opcao in
1)
echo “:::LISTAR OS BACKUPS:::”
if [ cd/root/bkp = diretorio ]
then
echo “ A pasta backup já existe, seu conteúdo é `ls`”
2)
echo “:::CÓPIA DE ARQUIVOS:::”
3)
echo “:::LEITURA DE ARQUIVOS:::”
*)
echo “ Opção não encontrada!”
esac
Boa noite Simone.
Não entendi a OPÇãO 3....
Sendo que, a pasta "bkp" tem somente 01 ARQUIVO, perguntar o nome . . .
no aguardo,
Marcelo Oliver
Olá, Marcelo!
Coloquei mais algumas "ideias" do que acho que pode fazer parte do script. Pode me ajudar me orientando no que está no caminho certo?
#!/bin/bash
#Faça um script para backups das configurações:
## - Listar os backups:
# Irá verificar se tem a pasta backup
# Irá listar o conteúdo interno.
## - Cópia de arquivos
#Irá verificar se tem a pasta backup.
# Se não tiver irá criar e copiar.
# Se tiver irá copiar.
## - Leitura de arquivos
# Irá listar o conteúdo e pedir o nome do arquivo.
# Abrirá o arquivo desejado.
$diretorio="/root/bkp";
$arq= /etc/network/interfaces;
$interfaces
echo “Olá, $USER!”
echo “ Escolha uma opção: 1- Listar os backups, 2- Cópia de arquivos ou 3- Leitura de arquivos”
read opção
case $opcao in
1)
echo “:::LISTAR OS BACKUPS:::”
if [ -d $diretorio ]; then
echo "Diretório existente";
else
echo "Diretório não encontrado";
echo “ O conteúdo desse diretório é `ls -lt | grep "^d"`”
fi
2)
echo “:::CÓPIA DE ARQUIVOS:::”
if [ -d $diretorio ]; then
echo “`cp/etc/network/interfaces /root/backup/$interfaces`”;
3)
echo “:::LEITURA DE ARQUIVOS:::”
echo "Informe o nome do arquivo: " ; read arq
if [ -f $arq ]
then
echo "Arquivo existente `cat//etc/network/interfaces` "
else
echo "Arquivo não existente"
fi
*)
echo “ Opção não encontrada!”
esac
Em relação ao item 3 então acredito que o ideal seria somente pedir o nome do arquivo e caso seja diferente ele relate a mensagem "Arquivo não encontrado".
Obrigada.