Você está na página 1de 2

IESB Curso: Redes de Computadores Disciplina: Programao aplicada a Redes 2011/2 Prof.

: Rodrigo Lemos Rodrigues

Lista de Exerccios de Shell


Estruturas de Entrada e Sada e Condicionais

1. Elabore um script que receba dois valores por parmetro e imprima e informe o maior e o menor. 2. Elabore um script que receba o nome do usurio interativamente (comando read) e verifique se o mesmo usurio do sistema. (DICA:Utilize o comando grep $1 /etc/passwd, para verificar o usurio) 3. Elabore um script (novouser) que crie um novo usurio, porm o script deve inicialmente validar se foi passado pelo menos 1 parmetro (nome do usurio), caso contrrio deve enviar a mensagem: uso novouser <usurio>. Os demais parmetros necessrios devero ser passados interativamente. (DICA: Utilize o comando useradd, antes verifique a permisso de execuo com: test x /usr/sbin/useradd) 4. Crie um script que armazene mensagens em um arquivo padro, msgs, no seguinte formato: <nmero da mensagem>:<texto da mensagem> Exemplo: 1:Mensagem 1 2:Mensagem 2 Para obter o nmero da ltima mensagem utilize o seguinte trecho de cdigo:
N=`tail n 1 msgs | cut -f1 d:` N=`expr $N + 1` #` - Utilize as crases para forar a execuo.

S execute o comando caso o arquivo msgs exista, caso contrrio N ser 1. (DICA:teste a existncia do arquivo utilizando test f msgs ). Valide a quantidade de parmetros, que deve ser maior que 1. Execuo:
$ mensagem.sh Ol mundo Mensagem registrada na posio 3 $ mensagem.sh Mensagem no informada, nada ser armazenado.

5. Crie um script que mostre a mensagem armazenada no arquivo msgs, conforme o ndice informado. Valide a quantidade de parmetros. (DICA:Utilize o comando:grep ^$N: msgs | cut f2 d:, para mostrar a mensagem). Caso o arquivo msgs no exista, envie a uma mensagem informada. 6. Crie um configurador de scripts, que receba por parmetro o nome do script, ento verifique se o mesmo tem permisso de execuo, caso no possua a permisso de execuo, adicione a permisso, em seguida informe: permisso de execuo adicionada ao script. Caso o script j possua a permisso de execuo, informe: O script j possui permisso. S inclua permisses caso o arquivo possua na primeira linha o texto
#!/bin/bash

(DICA:utilize o comando head n 1 $1, para obter a primeira linha do arquivo. Para comparar a linha com o texto use o teste abaixo:
C=`echo e #\x21/bin/bash` test `head n 1 $1` = $C

Você também pode gostar