Shell script - Verificar arquivo

1. Shell script - Verificar arquivo

Gustavo
rs23

(usa Ubuntu)

Enviado em 19/04/2010 - 15:11h


Não estou conseguindo fazer este script

Verificar se um determinado arquivo texto existe. Se o arquivo não existir o script cria o arquivo e no final o script pergunta ao usuário se ele deseja remover o arquivo.




  


2. Re: Shell script - Verificar arquivo

Perfil removido
removido

(usa Nenhuma)

Enviado em 19/04/2010 - 17:19h

Recomendo a leitura desses dois tutoriais:
http://www.devin.com.br/shell_script/
http://aurelio.net/shell/canivete.html

Mas como eu sou novo no fórum, vou quebrar seu galho :-D

###########################################

# Coloque aqui o arquivo que vc quer
ARQUIVO="$HOME/arquivo.txt"

# Verifica se o arquivo existe, caso não (||), o script executa a seqüência de comandos que está entre '{' e '}':
[ -e "$ARQUIVO" ] || {
# Cria um arquivo vazio
touch "$ARQUIVO"

# O restante do seu script
...
...
# Um loop "infinito" para controlar as respostas do usuário, caso o valor da variável SIMNAO seja diferente de 'n', 'N', 's' e 'S', o script exibe um erro e a execução continua até que ele atribua um valor válido
while ((1)); do
# O parâmetro '-n <VALOR>' especifica quantos caracteres serão armazenados na variável seguinte, no caso, um caractere apenas ('s' ou 'n')
read -n 1 -p "Deseja remover o arquivo '$ARQUIVO' [S/n]? " SIMNAO
echo ""
if [[ "$SIMNAO" = 's' || "$SIMNAO" = 'S' ]] ; then
# Caso a resposta seja positiva, ou seja, "sim", o arquivo é removido
echo "Removendo o arquivo $ARQUIVO..."
rm "$ARQUIVO" || echo "Ocorreu um erro ao remover $ARQUIVO"
break
elif [[ "$SIMNAO" = 'n' || "$SIMNAO" = 'N' ]] ; then
# O comando break "quebra" o loop
break
else
# Caso a resposta seja diferente de 's', 'S', 'n' ou 'N'
echo "Responda 's' ou 'S' para sim e 'n' ou 'N' para nao. "
fi
done
} # Fim do bloco de códigos

exit 0

###########################################

Óbviamente, existem outras maneiras mais fáceis de se fazer isso, mas acho que assim é mais completo. :-D


3. Re: Shell script - Verificar arquivo

Jefferson Diego
Diede

(usa Debian)

Enviado em 19/04/2010 - 17:59h

EXISTE=true
if [ ! -e "arquivodetexto" ]; then
echo "O arquivo não existe"
touch "arquivodetexto"
EXISTE=false
fi


blábláblá...

final:

if [ "$EXISTE" = "false" ]; then
echo "Criei o arquivo lá... deseja removê-lo?"
read resposta

if [ "$resposta" = "sim" ]; then
rm -f arquivodetexto
fi
fi






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts