Buscar

PROGRAMAÇÃO EM SHELL SCRIPT atividade 4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Usuário
	MARCOS VINICIUS DA SILVA PIRES
	Curso
	GRA0946 PROGRAMAÇÃO EM SHELL SCRIPT GR2592-212-9 - 202120.ead-9082.05
	Teste
	ATIVIDADE 4 (A4)
	Iniciado
	24/08/21 10:53
	Enviado
	26/08/21 09:19
	Status
	Completada
	Resultado da tentativa
	10 em 10 pontos  
	Tempo decorrido
	46 horas, 26 minutos
	Resultados exibidos
	Respostas enviadas, Respostas corretas, Comentários
· Pergunta 1
1 em 1 pontos
	
	
	
	Para se editar um arquivo Shell Script, pode-se utilizar qualquer editor que gere um arquivo textual ASCII. Assim, podemos utilizar editores como o Vi, o XEmacs, o KWrite e KEdit. O editor Vi foi lançado em meados da década de 1970 e se tornou popular até os dias atuais por ser um editor que acompanha o padrão POSIX.
Analise as afirmativas a seguir, identificando com “V” a(s) verdadeira(s) e com “F”, a(s) falsa(s).
( ) Para ativar um comando no modo Shell, deve-se pressionar o caractere “:” e, em seguida, o comando a ser executado.
( ) Movimentações do cursor podem ser realizadas por intermédio das teclas “h”, “j”, “k” e “l”, mesmo que se esteja no modo de edição.
( ) Para se alternar entre o modo de comando e o modo de edição deve-se pressionar a tecla “ESC” ou a tecla “a”.
( ) Para as operações de busca e de substituição de texto, o editor Vi aceita Expressões Regulares.
Agora, assinale a alternativa que traz a sequência correta.
	
	
	
	
		Resposta Selecionada:
	 
V, F, V e V.
	Resposta Correta:
	 
V, F, V e V.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Para se entrar no modo de edição, deve-se pressionar o caractere “a”, e, para voltar ao modo de comando, a tecla ESC. As letras “h”, “j”, “k” e “l” somente atuarão na movimentação do cursor no modo de comando. Estando no modo de comando, as ações de Shell são ativadas pelo caractere “:”. Por fim, podemos falar que as Expressões Regulares correspondem a um recurso altamente poderoso no processo de busca de substituição de partes do texto editado.
	
	
	
· Pergunta 2
1 em 1 pontos
	
	
	
	Expressões Regulares têm o objetivo de testar se uma cadeia de caracteres corresponde a um padrão predeterminado. Esse tipo de teste é extremamente útil no processo de busca e substituição de cadeias de caracteres nos editores de texto, bem como para a validação de informações em campos de formulários em sistemas Web.
Suponha que há a necessidade de testar se a escrita de nome e sobrenome de uma pessoa está correta. Para tanto, imagine que a primeira letra do nome e as primeiras letras de cada sobrenome devem ser iniciadas com letras maiúsculas. Para facilitar a questão, leve em consideração que não existem caracteres acentuados, que o nome não contém partículas, como “da” (no caso de “João da Silva”), e que o nome é composto apenas pelo primeiro nome e um sobrenome.
Assinale a alternativa que contém a expressão regular correspondente.
	
	
	
	
		Resposta Selecionada:
	 
^[A-Z][a-z]* [A-Z][a-z]*$.
	Resposta Correta:
	 
^[A-Z][a-z]* [A-Z][a-z]*$.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Você observou como o nome, para essa questão, pode ser formado e criou corretamente a expressão regular. Também observou corretamente como diferenciar a primeira letra maiúscula das demais letras minúsculas.
	
	
	
· Pergunta 3
1 em 1 pontos
	
	
	
	Um dos editores “clássicos” no mundo do Unix/Linux é chamado “Vi”. Esse editor, lançado em 1976, foi incorporado ao Unix padrão POSIX, tornando-o popular. Sua operação pode ser alternada entre o modo de comando e o modo de edição por intermédio das teclas “ESC” e “a”, respectivamente. Dentro do modo de edição, pode-se evocar os comandos de Shell por uma sequência iniciada pela tecla “:”.
Imagine as seguintes funcionalidades:
I. Grava o texto sem sair do editor Vi.
II. Efetua a saída do Vi alertando o usuário caso o texto tenha sido alterado desde a última gravação.
III. Encerra o Vi sem salvar o texto sob edição, mesmo que tenha sido modificado desde a última gravação.
IV. Efetua a gravação do arquivo mesmo se aberto somente para leitura.
V. Efetua a gravação do texto e o encerramento do Vi.
Agora, associe as funcionalidades aos comandos do modo Shell:
( ) q!
( ) w!
( ) q
( ) wq
( ) w
Assinale a alternativa que contém a sequência correta.
	
	
	
	
		Resposta Selecionada:
	 
III; IV; II; V; I.
	Resposta Correta:
	 
III; IV; II; V; I.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Realmente, o Vi permite uma série de combinações de gravação e encerramento do editor. Permite, inclusive, por meio do comando “W!”, que o arquivo seja gravado mesmo tendo sido aberto somente para leitura.
	
	
	
· Pergunta 4
1 em 1 pontos
	
	
	
	Implementar uma função em Shell Script é algo análogo a implementar uma função em uma linguagem de programação estruturada. Devemos, nesse caso, seguir a sintaxe correspondente e implementar o script de acordo com a nossa lógica de programação, utilizando, para isso, os comandos e estruturas disponibilizadas pela linguagem script.
Para essa questão, suponha o seguinte script:
#!/bin/bash
 
data=$(date +"%d-%m-%y")
echo "Data Atual = $data"
mv $1 $data.$1
Analise as afirmativas a seguir:
I. O script imprime, na tela, a data atual no formato dia-mês-ano.
II. O script copia o arquivo passado como parâmetro para a data atual.
III. O script renomeia o arquivo passado como parâmetro, inserindo a data antes de seu nome.
IV. O script deve receber como primeiro parâmetro o nome do arquivo a ser renomeado.
Selecione a alternativa que traz somente as corretas.
	
	
	
	
		Resposta Selecionada:
	 
I, III e IV.
	Resposta Correta:
	 
I, III e IV.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Realmente, o script apresentado coleta a data do sistema por intermédio do comando “DATE” para que possa, na última linha, renomear o arquivo cujo nome é passado como primeiro parâmetro ao script.
	
	
	
· Pergunta 5
1 em 1 pontos
	
	
	
	Um sistema operacional como o Linux pode ser instalado em uma máquina pessoal ou em máquinas que servirão para outras demandas, como é o caso de servidores de redes. Um sistema operacional de rede é aquele dotado de mecanismos e serviços que vão ao encontro do gerenciamento e controle de acesso aos recursos presentes em uma rede de computadores. Para essa questão, suponha as seguintes funcionalidades:
I. Serviço de Nomes: usado para realizar a tradução de um nome da Internet (por exemplo: empresax.com.br) para o seu respectivo endereço IP.
II. Serviço cuja função é distribuir de forma dinâmica, dentre outros parâmetros, o endereço IP para as máquinas clientes.
III. Comando responsável pela edição de rotas em um servidor de rotas.
IV. Serviço responsável por realizar a tradução entre endereços falsos da Internet (por exemplo: 192.168.0.1) para endereço real.
Associe as funcionalidades listadas com os serviços que poderão ser exportados e os comandos do sistema operacional Linux:
( ) NAT, ou Network Address Translation (Tradução de Endereçamento de Rede).
( ) DHCP ( Dynamic Host Configuration Protocol – Protocolo de Configuração Dinâmica de Host).
( ) DNS ( Domain Name Server – Servidor de Nomes de Domínio)
( ) route (rota)
Agora, selecione a alternativa que contém as corretas associações.
	
	
	
	
		Resposta Selecionada:
	 
IV; II; I; III.
	Resposta Correta:
	 
IV; II; I; III.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Um computador pode desempenhar várias funcionalidades inerentes a uma rede de computadores, as quais também podem ser desempenhadas em computadores pessoais, localizados em, por exemplo, residências.
	
	
	
· Pergunta 6
1 em 1 pontos
	
	
	
	Um arquivo de script pode conter várias funções. As funções poderão ser executadas sequencialmente ou, ainda, selecionadas de acordo com parâmetros e situações atuais do sistema. Imagine que o trecho a seguir representa um script que executa uma determinada função a partir do parâmetro passado pelo usuário. Assim, deve-se passar o valor “1” ou “2” como parâmetro para que seja executada a “ funcao1( )” ou a “ funcao2()”, respectivamente.
Para essa questão, preencha as lacunas da codificação a seguir e depois selecione a alternativa que corresponde à sequência correta.
#!/bin/bash
 
funcao1()
{
echo "Selecionada a funcao 1"
}
 
funcao2()
{
echo "Selecionada a funcao 2"
}
 
case "___" in
__
funcao1 ;;
__
funcao2 ;;
__
echo "opcao invalida"
esac
	
	
	
	
		Resposta Selecionada:
	 
$1; 1); 2); *).
	Resposta Correta:
	 
$1; 1); 2); *).
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Você observou que o valor “1” ou “2”, passado como parâmetro, corresponde à variável “ $1”, que será a base da seleção pelo comando “ case”. Você observou corretamente também a estrutura do comando “ case”, selecionando a chamada à “ funcao1( )” ou à “ funcao2( )”.
	
	
	
· Pergunta 7
1 em 1 pontos
	
	
	
	Um Shell Script pode manipular não somente as variáveis criadas e instanciadas durante a execução dos scripts, mas também variáveis de ambiente. A manipulação das variáveis de ambiente é regida pelas mesmas regras, como a necessidade da utilização do símbolo “ $” precedendo o nome da variável. Imagine que você precisa criar um script para testar se o diretório corrente é o diretório home do usuário corrente. Preencha as lacunas de modo a atender ao especificado:
#!/bin/bash
 
if [ "___" ___ "$HOME" ]
then
echo "Nao estah no diretorio HOME"
echo "O diretorio HOME eh $HOME"
echo "O diretorio corrente eh $PWD"
else
echo "Estah no diretorio HOME ($HOME)"
__
Agora, assinale a alternativa que contém a sequência correta do preenchimento das lacunas.
	
	
	
	
		Resposta Selecionada:
	 
$PWD; !=; fi.
	Resposta Correta:
	 
$PWD; !=; fi.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Você preencheu corretamente as lacunas, observando bem que a variável de ambiente que indica o diretório corrente é a “ $PWD” que, no caso do código apresentado nesta questão, foi comparado com a variável “ $HOME” (que indica o diretório home do usuário corrente). Essa comparação é semelhante à linguagem C de programação, ou seja, é denotada por “ !=”. Por fim, a finalização do bloco do comando condicional é realizada por meio do “ fi”.
	
	
	
· Pergunta 8
1 em 1 pontos
	
	
	
	Para permitir uma melhor estruturação e aproveitamento de códigos, um script Shell pode evocar funções presentes no mesmo arquivo de codificação ou, ainda, evocar funções externas. Para o caso de chamar funções externas, deve-se executar o arquivo que contém a implementação da função a ser executada. A partir dessas informações, imagine que temos a necessidade de executar um arquivo Shell Script denominado “coletadados.sh” presente na pasta: /home/usr/scripts. Suponha que devemos passar o valor 5 para tal script.
Assim, complete as lacunas da codificação a seguir e depois assinale a alternativa que contém as informações corretas.
___/bin/bash
___/____ 5
	
	
	
	
		Resposta Selecionada:
	 
#! ; /home/usr/scripts ; coletadados.sh .
	Resposta Correta:
	 
#! ; /home/usr/scripts ; coletadados.sh .
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Inicialmente, para se criar um Shell Script devemos informar qual Shell será utilizado para realizar a interpretação dos comandos, sendo que essa indicação é realizada mediante a combinação de caracteres “ #!” (no caso da questão, é utilizado o “bash”). Para a evocação de scripts externos, deve-se indicar o caminho no qual se localiza o arquivo a ser executado. Em tal caminho deve constar, também, o nome completo do arquivo. No caso dessa questão, o parâmetro é passado logo após o nome do arquivo que contém a codificação Shell Script.
	
	
	
· Pergunta 9
1 em 1 pontos
	
	
	
	Implementar programas por meio de linguagens de programação ou codificar Shell Script requer, em grande parte das vezes, a utilização de variáveis. A manipulação das variáveis apresenta algumas diferenciações em relação às sintaxes utilizadas.
A partir dessas informações, analise as linhas de codificação em Shell Script e as associe às definições a seguir:
I . $var=$var1
II. var=$var1
III. var='$var1'
IV. var=`ls`
( ) A variável será criada e instanciada com o valor armazenado pela variável “ $var1”.
( ) A variável recebe o resultado do comando “LS”, ou seja, armazenará uma lista com os nomes dos arquivos.
( ) Uma variável previamente criada é instanciada com o valor armazenado pela variável “ $var1”
( ) A variável será instanciada com a string: “$var1”.
Agora, assinale a alternativa que contém a sequência correta.
	
	
	
	
		Resposta Selecionada:
	 
II; IV; I; III.
	Resposta Correta:
	 
II; IV; I; III.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Existem várias formas de se instanciar uma variável. Você observou e associou corretamente a instanciação de uma variável previamente criada (I), a criação e instanciação de uma variável (II), a instanciação sem a interpretação do valor associado (III) e a instanciação com o retorno de um comando (IV).
	
	
	
· Pergunta 10
1 em 1 pontos
	
	
	
	Nas Expressões Regulares, uma cadeia de caracteres pode ser representada por meio de seu padrão. Por exemplo, o padrão de um número de telefone celular representado pela expressão regular, com DDD, é:
^\([1-9]{2}\) 9[0-9]{4}\-[0-9]{4}$
Na expressão regular, temos:
· “^” e “$” → representam o início e o final da cadeia.
· “\(“ e “\)” → denotam o abre e fecha parênteses.
· “[1-9]{2}” → duas ocorrências de números que podem variar de 1 a 9 (representação do DDD)
· “9” → dígito 9 (todo celular inicia com o dígito 9).
· “[0-9]{4}” → quatro ocorrências de dígitos que podem variar de 0 a 9.
· “\-” → o caractere “-” separando os campos do número do telefone.
Para essa questão, analise as Expressões Regulares a seguir:
I. ^(([0-9]{3}.[0-9]{3}.[0-9]{3}-[0-9]{2})|([0-9]{11}))$
II. ^([0-1][0-9]|[2][0-3]):[0-5][0-9]$
III. ^[a-z0-9.]+@[a-z0-9]+\.[a-z]+(\.[a-z]+)?$
IV. ^([0-9]{1,3}\.){3}[0-9]{1,3}$
Associe as Expressões Regulares com os seus respectivos significados:
( ) Representa um endereço da Internet – endereço IP.
( ) Representa as horas no formato “hh:mm”.
( ) Representa um CPF (podendo conter pontos e hífen ou apenas números)
( ) Representa um endereço de e-mail.
Agora, assinale a alternativa que traz a ordem correta.
	
	
	
	
		Resposta Selecionada:
	 
IV; II; I; III.
	Resposta Correta:
	 
IV; II; I; III.
	Comentário da resposta:
	Parabéns! Sua resposta está correta. Você analisou corretamente as Expressões Regulares e associou corretamente aos padrões correspondentes. Podemos notar, portanto, a praticidade da utilização das Expressões Regulares no processo tanto de busca e substituição de cadeias de caracteres quanto de validação de formatos de dados.
	
	
	
Quinta-feira, 26 de Agosto de 2021 09h22min14s BRT

Outros materiais