Dúvida sobre shell script

1. Dúvida sobre shell script

Adam almeida souza pereira
sudord

(usa Lubuntu)

Enviado em 03/11/2014 - 13:22h

Opa, eu estava lendo uma apostila sobre shell script, é tem uma tarefa nela que é o seguinte:

Tarefa: script que testa arquivos
Tente fazer o script "testa-arquivos", que pede ao usuário para digitar um arquivo e testa
se este arquivo existe. Se sim, diz se é um arquivo ou um diretório. Exemplo de uso:
prompt$
testa-arquivos
Digite o arquivo: /naoexiste
O arquivo '/naoexiste' não foi encontrado
prompt$
testa-arquivos
Digite o arquivo: /tmp
/tmp é um diretório
prompt$
testa-arquivos
Digite o arquivo: /etc/passwd
/etc/passwd é um arquivo

É eu não consegui criar o script com base no que aprendi na apostila, quem puder me ajudar tirando essa dúvida sobre como criar o tal script eu agradeço.


  


2. Re: Dúvida sobre shell script

Ton Melo
IZhaq_melo

(usa FreeBSD)

Enviado em 03/11/2014 - 14:22h

sudord escreveu:

Opa, eu estava lendo uma apostila sobre shell script, é tem uma tarefa nela que é o seguinte:

Tarefa: script que testa arquivos
Tente fazer o script "testa-arquivos", que pede ao usuário para digitar um arquivo e testa
se este arquivo existe. Se sim, diz se é um arquivo ou um diretório. Exemplo de uso:
prompt$
testa-arquivos
Digite o arquivo: /naoexiste
O arquivo '/naoexiste' não foi encontrado
prompt$
testa-arquivos
Digite o arquivo: /tmp
/tmp é um diretório
prompt$
testa-arquivos
Digite o arquivo: /etc/passwd
/etc/passwd é um arquivo

É eu não consegui criar o script com base no que aprendi na apostila, quem puder me ajudar tirando essa dúvida sobre como criar o tal script eu agradeço.



vamor por partes.. refaça o problema dividindo por partes..


primeiro para exibir algo na tela:

#texto simples
echo 'texto'

#caixa de diálogo
dialog --inputbox
fonte: http://bash.cyberciti.biz/guide/A_menu_box

#menu de dialogo
fonte: for e dialog
http://stackoverflow.com/questions/4889187/dynamic-dialog-menu-box-in-bash


da pra saber se o arquivo existe ou mesmo comparara ele com outro é so saber o caminho ( path )
o comando é:


sdiff file1.txt file2.txt


estruturas de decisão If baśico;

espero ter ajudado.
seria facil lhe dar o script todo.. mas lhe enviei os comandos basta voce montar o script.








3. use o test

Marcos Paulo Ferreira
daemonio

(usa Slackware)

Enviado em 03/11/2014 - 23:34h

o comando test (ou []) fornece tudo o que você precisa:

http://apoie.org/JulioNeves/PapoIV.htm#O_Comando_test
http://www.vivaolinux.com.br/artigo/As-maravilhas-do-Shell-Script?pagina=3

exemplo:

[ -d /tmp ] && echo 'Arquivo é um diretorio'
[ -f /etc/passwd ] && echo "Arquivo é um arquivo normal'

t+






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts