0% acharam este documento útil (0 voto)
122 visualizações4 páginas

Prática - Shell Script Parte 1

Este documento apresenta exercícios sobre shell script para criar e manipular arquivos e diretórios. Os exercícios incluem criar scripts para consultar informações em um arquivo, inserir novos dados, verificar o horário do dia e determinar se um número é par ou ímpar.

Enviado por

Leandro
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
122 visualizações4 páginas

Prática - Shell Script Parte 1

Este documento apresenta exercícios sobre shell script para criar e manipular arquivos e diretórios. Os exercícios incluem criar scripts para consultar informações em um arquivo, inserir novos dados, verificar o horário do dia e determinar se um número é par ou ímpar.

Enviado por

Leandro
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 4

Universidade Federal do ABC

Curso de Tecnologia e Sistemas de


Informação
Disciplina: Software Livre
Prática: Shell Script

Exercícios

1- Crie um diretório denominado “aluno” e outro com o nome “script”. Dentro do


diretório /aluno/script construa um arquivo chamado agenda.dat. Com o gedit
edite o arquivo e insira o seguinte texto:

#Nome Telefone
Felipe 11-123456
Gustavo 11-654321
Carla 12-123478
Maria 13-796364

Construa um script denominado “agenda1” que permita consultar as


informações pelo nome armazenado no arquivo agenda.dat. Para executar,
não se esqueça de dar a permissão para que o arquivo possa ser executado.

mkdir aluno
mkdir script
touch agenda.dat
gedit agenda.dat

Inseridas as informações abaixo:

Nome Telefone
Felipe 11-123456
Gustavo 11-654321
Carla 12-123478
Maria 13-796364

touch agenda1.sh
gedit agenda1.sh

#!/bin/bash
#mostra os nomes armazenados no arquivo agenda.dat
#Lê os dados no arquivo /aluno/script/agenda.dat
awk ‘{print $1}’ /aluno/script/agenda.dat

sh agenda1.sh

Nome
Felipe
Gustavo
Carla
Maria
2- Construa um script denominado “agenda2” que possibilite inserir
informações, como o nome e telefone de pessoas no arquivo agenda.dat.

touch agenda2.sh
gedit agenda2.sh

#!/bin/bash
#Inserir nome e telefone no arquivo agenda.dat
echo Digite seu nome:
read nome >> agenda.dat
echo Qual é o número de seu telefone:
read telefone >> agenda.dat
echo $nome $telefone
echo “nome e telefone inseridos com sucesso!”

sh agenda2.sh

Digite seu nome: Leandro


Qual é o número de seu telefone: 9045-7732
Nome e Telefone inseridos com sucesso!

3 - Crie um script denominado “tempo” que possibilite analisar se é dia, tarde,


ou noite; o script deve saudar o usuário adequadamente. Use a estrutura
condicional if.

touch tempo.sh
sudo gedit tempo.sh

#!/bin/bash

if [ “$(date +%l)” -ge 6 -a “$(date +%l)” -le 11 ]


then
echo “Bom dia $USER, hoje é $(date +%A)-feira, dia $(date +%d) de $(date
+%B) de $(date +%Y)”

elif [ “$(date +%l)” -ge 12 -a “$(date +%l)” -le 17 ]


then
echo “Boa tarde $USER, hoje é $(date +%A)-feira, dia $(date +%d) de $(date
+%B) de $(date +%Y)”

else [ “$(date +%l)” -le 18 -a “$(date +%l)” -le 23 ]


echo “Boa noite $USER, hoje é $(date +%A)-feira, dia $(date +%d) de $(date
+%B) de $(date +%Y)”
fi

sh tempo.sh

Boa tarde Leandro, hoje é segunda-feira, dia 15 de Dezembro de 2014


4 - Crie um script denominado “impar” que permita receber um número de 0 a 9
e determine se esse número é par ou ímpar. Nesse caso, trabalhe com o
comando case.

touch impar.sh
gedit impar.sh

#!/bin/bash
echo “Entre com um número de 0 e 9”
read Numero
case $Numero in
1) echo “1 é um número ímpar” ;;
2) echo “2 é um número par” ;;
3) echo “3 é um número ímpar” ;;
4) echo “4 é um número par” ;;
5) echo “5 é um número ímpar” ;;
6) echo “6 é um número par” ;;
7) echo “7 é um número ímpar” ;;
8) echo “8 é um número par” ;;
9) echo “9 é um número ímpar” ;;
esac

sh impar.sh

Entre com um número entre 0 e 9


7
7 é um número ímpar

5 - Escreva um script denominado “diretório” que recebe um único parâmetro


que é o nome de um diretório. Se o número de argumentos não for igual a um,
exiba uma mensagem; se o argumento não for um diretório, exiba outra
mensagem. Sendo um diretório, exiba os arquivos do mais recentemente
modificado para o menos recente.

6 - Escreva um script denominado “backup” que cria um backup de todos os


arquivos do diretório corrente que possuam extensão .txt. A cópia backup deve
ser feita em um diretório de nome bkp (crie-o, caso não exista) e cada um dos
arquivos de cópia deve receber um sufixo.bak.

touch backup.sh
gedit backup.sh

#!/bin/bash
If [ ! -d ‘/aluno/script/backup’ ]; then
echo “O diretório ‘backup’ não existe!”
`mkdir –p /aluno/script/backup `

Iif [ $? -eq 1 ]; then


echo “Diretório criado com sucesso”
fi
else
echo “O diretório ‘backup’ já existe”
fi

sh backup.sh

O diretório ‘backup’ já existe!

Você também pode gostar