Mudanças entre as edições de "ARC60808-2014-2"
Linha 230: | Linha 230: | ||
##Imprimir na tela frases que digam o que está sendo feito no script (úteis para debugs de programas.). | ##Imprimir na tela frases que digam o que está sendo feito no script (úteis para debugs de programas.). | ||
#Com o script feito, salve, saia do editor e execute-o. (Lembre-se de dar permissão de execução. | #Com o script feito, salve, saia do editor e execute-o. (Lembre-se de dar permissão de execução. | ||
+ | {{collapse bottom}} | ||
+ | |||
+ | {{collapse top | Aula 7 - 12/8/14: Shell Script}} | ||
+ | |||
+ | '''Objetivo''': Ser capaz de implementar as estruturas de teste ''if'', ''while'' e ''for'', para a execução de tarefas simples no Linux. | ||
+ | |||
+ | ROTEIRO: | ||
+ | #Crie um script, dentro da pasta turma, com o nome de '''comparador.sh'''. Este ''script'' deve receber 2 valores (números) como parâmetro e o script deve compará-los e retornar na tela se: | ||
+ | ##o parâmetro $1 é maior que o parâmetro $2; | ||
+ | ##o parâmetro $1 é igual ao parâmetro $2; | ||
+ | ##o parâmetro $1 é menor do que o parâmetro $2. | ||
+ | #Após terminar o ''script'', lembrando de verificar se todas as hipóteses estão funcionando corretamente. | ||
+ | #Crie um outro ''script'', com o nome '''zerador.sh'''. Este ''script'' deve receber como parâmetro um número qualquer, e o ''script'' deve subtrair uma unidade por vez deste valor, até que chegue a zero. Faça também que os valores sejam impressos na tela a cada interação, ou seja, até chegar a zero. | ||
+ | #Crie um último ''scritp'', também dentro de sua pasta turma, agora com o nome '''criaNDiretorios.sh'''. Este script deve criar quantos diretórios que você deseja, sem que seja executado comando por comando, ou seja, um único comando é executado, mas ele se repete quantas vezes for necessário. Os diretorios devem ser chamados: '''diretorio1''' '''diretorio2''' '''diretorio3''' … e assim por diante até o número que você escolheu. | ||
{{collapse bottom}} | {{collapse bottom}} | ||
Edição das 15h11min de 12 de agosto de 2014
Professores: Odilson Tadeu Valle e Tulio Alberton Ribeiro
Encontros: 2ª feira, 4ª feira e 6ª feira entre 13h30 às 15h20 turma A e 15h40 às 17h30 turma B
Atendimento paralelo: Odilson 3ª feira das 9h40 às 10h35 e 4ª das 14h25 às 15h20. Local: Lab. de Desenvolvimento.
Email: odilson@ifsc.edu.br e tulio.alberton@ifsc.edu.br
IMPORTANTE: o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação e aguardar o parecer da coordenação.
Referências bibliográficas
- Odilson T. Valle . Administração de Redes com Linux: Fundamentos e Práticas. 1. ed. Florianópolis: Publicação do IF-SC, 2010. v. 1000. 302p .
- Valle, Odilson Tadeu. Gerência de Redes. IFSC - Unidade São José. 2009.
- Guia Foca Linux (intermediário ou avançado)
- Demais referências contidas na página principal de GER.
Diário de aulas
Aula 1 - 30/7/14: Apresentação da disciplina |
---|
|
Aula 2,3,4 - 1,4,6/8/14: Revisão dos comandos básicos |
---|
Objetivo: Revisão dos comandos básicos, familiarização e fixação do conteúdo. Material Auxiliar (Comandos básicos 01) (Comandos básicos 02 )
|
Aula 5 - 8/8/14: Editor VI |
---|
Objetivo: Familiarização com o editor e ser capaz de executar comandos simples, porém úteis para manipulação de arquivos. Este roteiro não é para entregar, mas é para fazer e guardar consigo, pois poderá servir de consulta para exercícios futuros, e as provas serão baseadas naquilo feito em sala de aula.
|
Aula 6 - 11/8/14: Lógica de Programação |
---|
Introdução à Lógica de Programação Introdução ao Shell (Slides Prof. Gustavo Introdução ao Shell, Slides Prof. Glauco Introdução ao Shell). Objetivo: Criar um script Shell com comandos básicos e que seja capaz de executar tarefas simples. Este roteiro não é para entregar, mas é para fazer e guardar consigo, pois poderá servir de consulta para exercícios futuros, e as provas serão baseadas naquilo feito em sala de aula. ROTEIRO:
|
Aula 7 - 12/8/14: Shell Script |
---|
Objetivo: Ser capaz de implementar as estruturas de teste if, while e for, para a execução de tarefas simples no Linux. ROTEIRO:
|
Exercícios de fixação / Desafios
Exercício / Desafio 1 |
---|
Crie os arquivos abaixo na pasta ~/meusLogs e preencha com conteúdo aleatório. tail -n 1 ~/meusLogs/arq1 head -n 1 ~/meusLogs/outroArq ls -lat ~/meusLogs/ A saída dos comandos devem ser colocados em variáveis e só então redirecionados para o arquivo. Ex.: VAR1=` comando a ser executado` Ex.: VAR2=`...` Para acessar uma variável utiliza o caracter $ Ex.: echo $VAR1 Sendo que, você irá identificar a cada chamada do script, em qual dia, mês, ano, hora, minuto e segundo o script foi chamado e colocar no topo de cada saída gerada a seguinte informação: Log gerado em: 07-08-2014_17:25:36, olhar exemplo no final do exercício. Dicas: você irá utilizar o comando 'date' para gerar a saída no formato desejado e redirecionar a saída para o arquivo em questão com >>. O arquivo monitorSaidaLog.txt deve estar em ~/meusLogs/monitorSaidaLog.txt, ou seja, dentro do home do usuário criar a pasta meusLogs e redirecionar a saída do script para lá...
d-m-Y_HMS d = dia atual, 0-31 m = mês atual, 1-12 Y = ano atual, 1900 - hoje H = hora atual, 0-23 M = minuto atual, 0-59 S = segundo atual, 0-59
Log gerado em: 07-08-2014_17:25:36 Aug 7 17:13:22 wrl -- MARK -- Aug 7 13:15:01 wrl kernel: [ 111.330006] eth0: no IPv6 routers present Aug 7 16:13:42 wrl su[8856]: + /dev/pts/1 worm:root Log gerado em: 07-08-2014_17:26:34 Aug 7 17:13:22 wrl -- MARK -- Aug 7 13:15:01 wrl kernel: [ 111.330006] eth0: no IPv6 routers present Aug 7 16:13:42 wrl su[8856]: + /dev/pts/1 worm:root
Se tudo correr bem, a cada 60 segundos, o arquivo deve ser incrementado com o novo conteúdo.
|