Lista de Exercícios (Shell Script)
Curso: Tecnologia em Redes de Computadores
Disciplina: Introdução aos Sistemas Abertos
Objetivo:
– Praticar conceitos básicos de programação shell script.
Instruções:
– Realize as atividades a seguir de acordo com os enunciados.
1. Crie shell scripts para cada uma das demandas abaixo:
a) Receber 2 números como entrada, e informar a relação entre eles (maior, menor ou igual).
b) Receber como argumento um número inteiro, e exibir a mensagem “Positivo”, “Negativo” ou “Nulo”,
conforme o caso.
c) Receber uma string como argumento e informar se é um arquivo ou diretório.
d) Receber como argumento o nome de um arquivo a ser criado. Antes de criar, o script deve verificar se
o arquivo já existe e, em caso positivo, emitir um alerta ao usuário. O arquivo criado não deve possuir
permissão de escrita.
e) Receber como argumento uma string, que deverá ser enviada (como conteúdo) para o arquivo criado
no script anterior. Caso o arquivo de destino não possua permissão de escrita, deve ser emitido um alerta
ao usuário.
f) Criar um usuário, a partir de um login informado como argumento. O script deverá verificar se o login
desejado já existe no sistema e emitir um alerta, caso já exista. O usuário deve ser criado sem a
necessidade de envio de informações adicionais ou senha.
g) Verificar se um determinado usuário, informado como argumento, está utilizando o sistema no
momento, retornando uma mensagem para ambos os casos (Caso o usuário não exista, deverá ser
emitido um alerta). Em seguida, apresentar uma relação com os usuários atualmente logados e a
quantidade, no seguinte formato:
NAME LINE TIME
usuario pts/0 2015-07-19 12:56
# users=1
h) Criar um arquivo com nome e tamanho informados pelo usuário (utilizar o comando dd).
i) Criar um backup (utilizar o utilitário tar) dos arquivos criados no script anterior (no mínimo 2), sendo os
arquivos a serem incluídos, informados pelo usuário. Ao final do backup, deve ser gerado um relatório em
um arquivo, no seguinte formato bkp-ddmmyyyy.log (onde dd, mm e yyyy são as informações de dia,
mês e ano do momento da criação, respectivamente), com as seguintes informações:
# Relatório de backup #
Iniciado em: 19/07/2015 19:01
Finalizado em: 19/07/2015 19:03
Obs: As informações de data/horário devem ser obtidas dinamicamente no sistema.
j) Modificar o script anterior para permitir o envio do backup e do relatório para um host remoto (Utilizar
uma segunda VM), através do comando scp, de modo que a conexão seja realizada sem a necessidade
de senha. O endereço de destino deverá ser informado pelo usuário.