Soa cap2 exercicios resolvidos shell
-
Upload
portaldoestudante -
Category
Documents
-
view
2.106 -
download
36
Transcript of Soa cap2 exercicios resolvidos shell
Exercícios ResolvidosShell Script
1. Crie uma Script que lê 2 números e determine a adição e multiplicação destes.
#!/bin/bash
#
echo "Introduza o 1o. numero"read n1echo "Introduza o 2o. numero"read n2
r
echo $[ $n1 + $n2 ]echo $[ $n1 * $n2 ]
2. Crie uma Script que lê um numero e determine se o mesmo é par ou ímpar.#!/bin/bash
#
echo "Introduza o numero"read no
r
if [ $(($no%2)) = 0 ]thenecho "Numero par"elseecho "Numero impar"fi
3. Crie uma Script que imprime números de 1 a 5 usando ciclo for.#!/bin/shfor i in 1 2 3 4 5doecho "Numero $i"done
4. Crie uma Script usando ciclo for que imprime valores de 10 a 0;#!/bin/bash
for (( i=10; i>=0; i ))doecho $idone
5. Script que cria directórios de acordo com um número de directórios especificado pelo usuário bem como as letras iniciais dos directórios a criar.
Sistema Operativos Avançados dr. Jonnathan Guambe
#!/bin/bashecho "Introduza o nr. de directorios a criar"read nrDirs
r
echo "Introduza as letras iniciais dos directorios a criar"read ltIni
r
#seq 2 $nrDirs cria uma sequencia de 1 ao numero #de directorios especificados pelo usuariofor ndir in `seq 1 $nrDirs`; domkdir $ltIni$ndirdone
6. Crie um script, que ao ser executado liste as seguintes opções: Solicite o nome do directório desejado, entre nesse directório e liste seu conteúdo.
1 Solicita o nome do arquivo a ser impresso.
2 Solicita o nome do arquivo a ser editado.
3 Solicita o nome do arquivo a ser excluído.
4 Para sair do script.#!/bin/bashlinha=""echo "Introduza o directorio a operar"read dir
r
echo "Entrando no directorio"cd $direcho "Listando conteudos"ls $direcho "Fim da Listagem"
�
echo "Escolha sua opcao"echo $linhaecho "1 Mostrar conteudo de um ficheiro"echo "2 Editar um ficheiro"echo "3 Remover ficheiro"echo $linharead opcaoecho ""
e
echo "Indique o nome do ficheiro"read fich
r
case $opcao in
Sistema Operativos Avançados dr. Jonnathan Guambe
1) cat $fich;;2) gedit $fich;;3) rm $fich;;*)echo "Opcao invalida"
esac
7. Escreva um conjunto de scripts para efectuar gestão de remoção de arquivos. A script del deve mover os arquivos passados como parâmetros para um directório lixeira; o script undel deve mover arquivos da lixeira para o directório corrente e o script lsdel deve listar o conteúdo da lixeira. O directório lixeira deve ser definido através da variável de ambiente $LIXEIRA. R:Antes de correr as scripts, garantir que o directório que servira como lixeira existe e definir a
variável de ambiente executando na linha de comando o seguinte: export LIXEIRA=/tmp/lixoScript del.sh:#!/bin/bash
#$@ Serve para buscar todos argumentos de uma única vez#$LIXEIRA – Variável de ambiente definido anteriormentemv $@ $LIXEIRA
==>Exemplo da execução do exercício anterior executando na linha de comando:$touch test{1,2,3,7,9}.txt$mkdir /tmp/lixo$export LIXEIRA=/tmp/lixo$./del.sh test1.txt test3.txt test9.txt
Script undel.sh:#!/bin/bash
#$@ Serve para buscar todos argumentos de uma única vez#$LIXEIRA – Variável de ambiente definido anteriormente#. refere ao directório localmv $LIXEIRA/* .
Script lsdel.sh:#!/bin/bash
#$@ Serve para buscar todos argumentos de uma única vez#$LIXEIRA – Variável de ambiente definido anteriormente
Sistema Operativos Avançados dr. Jonnathan Guambe
ls lh $LIXEIRA
Sistema Operativos Avançados dr. Jonnathan Guambe