Вы находитесь на странице: 1из 5

Pág.

1/5
1º Laboratório de Sistemas Operacionais
ECOS01 - Prof. Otávio de Souza Martins Gomes

Este laboratório tem como objetivo apresentar comandos básicos utilizando o


Sistema Operacional Linux através de seu terminal, com a utilização de comandos e
a criação de shell scripts.
Para a realização das atividades, descompacte o arquivo Lab01.zip
disponibilizado pelo professor em /home/aluno/

A. Utilização de comandos básicos no terminal


1) Digite os comandos apresentados a seguir, nesta ordem, e analise seus resultados:

$ pwd <Enter>
• Em que diretório você está? /home/<user>/

$ cd Lab01 <Enter>
$ pwd <Enter>
• Em que diretório você está agora? /home/<user>/Lab01

$ ls <Enter>
• Que arquivos estão alocados dentro da pasta Lab01?

$ man ls <Enter>
• Utilize as setas ou PgUp/PgDn para ler o manual do comando ls.
Pressione q para sair

$ clear <Enter>
• Qual a função do comando clear?

$ cat Lab01a.t <Enter>


$ cat -n Lab01a.t <Enter>
• Qual a função do comando cat? Qual a função do parâmetro -n? Qual a
função do parâmetro -b? Qual a função do parâmetro -A?
• Qual o conteúdo do arquivo Lab01a.t?

$ head -5 Lab01a.t <Enter>


• Qual o conteúdo das 5 primeiras linhas do arquivo Lab01a.t?

$ tail -3 Lab01a.t <Enter>


• Qual o conteúdo das 3 últimas linhas do arquivo Lab01a.t?
Pág. 2/5
1º Laboratório de Sistemas Operacionais

$wc Lab01a.t <Enter>


• Quantas linhas, palavras e caracteres possui o arquivo Lab01a.t?

$ clear <Enter>
$ ls -l <Enter>
• Quais os diferentes atributos apresentados?
• O que representam os atributos rwx?

$ ls *.txt <Enter>
• Quantos arquivos *.txt estão alocados dentro da pasta Lab01?

$ touch arq01.txt <Enter>


$ ls *.txt <Enter>
• Quantos arquivos *.txt estão alocados dentro da pasta Lab01?

$ cat arq01.txt <Enter>


• Qual o conteúdo do arquivo arq01.txt?

$ ls -l > arq01.txt <Enter>


$ cat arq01.txt <Enter>
• Qual o novo conteúdo do arquivo arq01.txt?
• Qual a função do símbolo > ?

$ tac arq01.txt <Enter>


• Qual a diferença entre os comandos tac e cat?

$ clear <Enter>
$ free > arq01.txt <Enter>
$ cat arq01.txt <Enter>
$ cal > arq01.txt <Enter>
$ cat arq01.txt <Enter>
• O que aconteceu com o conteúdo de arq01.txt após a utilização
consecutiva do símbolo >?
Pág. 3/5
1º Laboratório de Sistemas Operacionais

$ clear <Enter>
$ free > arq01.txt <Enter>
$ cat arq01.txt <Enter>
$ cal >> arq01.txt <Enter>
$ cat arq01.txt <Enter>
• O que aconteceu com o conteúdo de arq01.txt após a utilização inicial
de > e posterior de >> ?

$ clear <Enter>
$ cat estados.brasil <Enter>
$ sort estados.brasil <Enter>
$ sort -r estados.brasil <Enter>
$ cat estados.brasil <Enter>
• Qual a função do comando sort ?
• Qual a função do parâmetro -r?
• O arquivo estados.brasil foi atualizado através da execução do comando
sort?

$ clear <Enter>
$ cat estados.brasil | tr a-z A-Z <Enter>
$ cat estados.brasil | tr a-z A-Z >> estados.brasil.UPPER <Enter>
• Qual a função do comando | (pipe) ?
• Qual a função do comando tr?

Analise o resultado obtido pelos comandos a seguir:


$ paste estados.brasil estados.brasil.UPPER <Enter>
$ diff estados.brasil estados.brasil.UPPER <Enter>
$ cmp estados.brasil estados.brasil.UPPER <Enter>

$ cat expectativavida.brasil <Enter>


$ cat expectativavida.brasil | grep “^Rio”<Enter>
$ cat nomesmaiscomuns.brasil <Enter>
$ cat -n nomesmaiscomuns.brasil| grep “J[o|ú]”<Enter>
$ cut -c-4 nomesmaiscomuns.brasil <Enter>
$ cut -c4- nomesmaiscomuns.brasil <Enter>
Pág. 4/5
1º Laboratório de Sistemas Operacionais
B. Criação e utilização de Shell scripts

Shell script é um arquivo com várias instruções para serem executadas pelo shell (que é o
interpretador de comandos) com o objetivo de automatizar ações rotineiras ou facilitar
operações pré-definidas.

1) Para a criação do primeiro script, siga os passos a seguir:


a. Digite o comando apresentado a seguir.
$ touch exemplo1.sh <Enter>

b. Verifique as permissões do o arquivo:


$ ls -l exemplo1.sh <Enter>

c. Altere a permissão do arquivo para permitir execução:


$ chmod 774 exemplo1.sh <Enter>
$ ls -l exemplo1.sh <Enter>

d. Acesse o arquivo através da linha de comando:


$ nano exemplo1.sh <Enter>

e. Preencha o arquivo com o seguinte conteúdo:


#!/bin/bash
echo $SHELL
Nome=$"Hello World"
varTeste=10
echo "Mensagem inicial:"
echo $Nome
echo "Nome da variável utilizada:"
echo varTeste
echo "Conteúdo da variável:"
echo $varTeste
echo "Insira um valor para varTeste:"
read varTeste
echo "Valor inserido para varTeste: $varTeste"

f. Salve o arquivo e saia do editor de texto.


g. Execute o comando:
$ ./exemplo1.sh <Enter>

* Questões de fixação:
• Quais foram os resultados obtidos?
• Qual a função dos comandos echo e read ?
• Qual a diferença entre utilizar ou não o símbolo $ antes do nome da variável?
Pág. 5/5
1º Laboratório de Sistemas Operacionais
2) Analise o script exemplo2.sh e verifique sua execução:
• Quais foram os resultados obtidos?
• Como são definidos os comentários em um script?
• De que modo comandos do terminal Linux podem ser utilizados em scripts?

3) Analise o script exemplo3.sh e verifique sua execução:


• Quais foram os resultados obtidos?
• Qual a diferença entre definir o conteúdo de uma variável utilizando aspas ou não?
• Qual a função da barra no script antes do nome da variável?

4) Analise os scripts exemplo4a.sh e exemplo4b.sh e verifique suas execuções:


• Quais foram os resultados obtidos?
• Quais são alguns dos modos de se executar comandos em um script?

5) Analise o script exemplo5.sh e verifique sua execução:


• Quais foram os resultados obtidos?
• Como se utilizam cláusulas condicionais em um script? Como utilizar a condição else? E a
condição else if?
• O que significa o parâmetro -gt? Outros parâmetros podem ser utilizados?
• Como pode ser utilizado o case em um script?

6) Analise o script exemplo6.sh e verifique sua execução:


• De que modo este menu poderia continuamente ser exibido? Como implementar um laço for
em um script? E um laço while em um script?

7) Analise os scripts exemplo7a.sh, exemplo7b.sh e exemplo7c.sh e verifique suas execuções:


• Quais foram os resultados obtidos?

C. Atividade de aplicação/fixação

1) Desenvolva um shell script que possua um menu com as seguintes opções:


o Inserir Aluno
• Fornecer nome
• Fornecer número de matrícula
• Concluir/confirmar inclusão de aluno
o Excluir Aluno
• Fornecer nome ou número de matrícula para exclusão
o Criar Arquivo de informações dos alunos inseridos
• Classificar por ordem alfabética ou por número de matrícula, conforme opção do
usuário

Вам также может понравиться