Baixe o app para aproveitar ainda mais
Prévia do material em texto
Curso GRA0946 PROGRAMAÇÃO EM SHELL SCRIPT GR2592202 - 202020.ead-29774686.06 Teste ATIVIDADE 4 (A4) Iniciado 23/09/20 12:13 Enviado 23/09/20 12:54 Status Completada Resultado da tentativa 6 em 10 pontos Tempo decorrido 40 minutos Resultados exibidos Respostas enviadas, Respostas corretas, Comentários ● Pergunta 1 ● 0 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: I; II; IV; III. Resposta Correta: IV; II; I; III. Feedback da respo sta: Infelizmente, sua resposta está incorreta. Para responder corretamente, analise melhor o exemplo dado na própria questão e faça um paralelo com os metacaracteres presentes no e-book. Por exemplo, o que denota a representação “[a-z0-9.]”? ● Pergunta 2 ● 1 em 1 pontos ● Codificações em Shell Script podem, também, acessar as variáveis de ambiente para que façam parte da lógica. Tais variáveis devem ser manipuladas de forma análoga às variáveis criadas durante a execução do próprio Shell Script, ou seja, deve ser antecedida pelo símbolo “ $”. Suponha as variáveis de ambiente relacionadas a seguir: I. PATH II. PWD III. HOME IV. USER Relacione as variáveis de ambiente citadas às descrições abaixo: ( ) Indica o diretório default (diretório “HOME”) do usuário corrente. ( ) Indica os caminhos nos quais o sistema operacional pode encontrar arquivos executáveis. ( ) Denota o usuário correntemente “logado” na máquina. ( ) Denota o diretório (pasta) corrente. Agora, assinale a alternativa que contém a sequência correta: Resposta Selecionada: III; I; IV II. Resposta Correta: III; I; IV; II. Feedback da respo sta: Parabéns! Sua resposta está correta. Você realizou corretamente as associações entre as variáveis de ambiente e suas descrições. Muitas variáveis de ambiente permitem alterações apenas pelo administrador do sistema (pode-se tentar alterá-las usando o comando SUDO). O comando SUDO permite a um usuário adquirir privilégios de outros usuários, por exemplo, privilégios do root (administrador do sistema). ● Pergunta 3 ● 0 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; I; II; V; IV. Resposta Correta: III; IV; II; V; I. Feedback da respo sta: Infelizmente, sua resposta está incorreta. Para responder essa questão, reveja os comandos Shell contidos no e-book. Por exemplo, qual a diferença entre os comandos “ q” e “ q!”? ● Pergunta 4 ● 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. Feedback da respo sta: 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 5 ● 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. Feedback da respo sta: 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 6 ● 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 chamarfunçõ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 . Feedback da respo sta: 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 7 ● 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. Feedback da respo sta: 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 8 ● 1 em 1 pontos ● No mundo Linux, temos várias opções de aplicativos, comandos e variáveis de ambiente que realizam funcionalidades semelhantes. É de grande valia conhecermos mais a respeito desse mundo para que possamos aproveitar melhor os recursos oferecidos pelo Linux, tanto em relação a máquinas pessoais quanto em relação a máquinas servidoras. Suponha a relação dos seguintes itens a seguir: I. Cygwin II. XEmacs III. pwd IV. $PWD Associe os itens acima com as descrições listadas a seguir: ( ) Comando que retorna o diretório (pasta) corrente. ( ) Editor para gerar arquivos de texto no formato ASCII. ( ) Emulador Linux sobre Windows. ( ) Variável que armazena o diretório (pasta) corrente Agora, assinale a alternativa que traz a sequência correta. Resposta Selecionada: III; II; I; IV. Resposta Correta: III; II; I; IV. Feedback da respo sta: Parabéns! Sua resposta está correta. O Linux é um sistema operacional que oferece muitas alternativas para sua utilização, administração e gerenciamento. Conhecer seus artifícios e mecanismos proporciona uma utilização mais profícua do sistema computacional. ● Pergunta 9 ● 0 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]*$. Feedback da respo sta: Infelizmente, sua resposta está incorreta. Para responder essa questão reveja, no e-book, os metacaracteres que poderão ser envolvidos em uma expressão regular. Por exemplo, o que significa o metacaractere “*”? Como permitir uma seleção de caracteres? ● Pergunta 10 ● 0 em 1 pontos ● Da mesma forma que as linguagens de programação, como é o caso da linguagem C, as funções, em Shell Script servem para modularizar o código, de modo a permitir, por exemplo, seu possível reaproveitamento em outras situações, bem como o processamento diferenciado em diversos ambientes e momentos nos quais o Shell Script será executado. Analise as afirmativas a seguir, identificando com “V” a(s) verdadeira(s) e com “F”, a(s) falsa(s). ( ) A sintaxe para a criação de uma função consiste de um nome (que identifica a função) seguido da sequência de símbolos “( )” ( ) No cabeçalho da função, entre os parênteses, poderão ser passados os parâmetros que serão manipulados pela função. ( ) O corpo da função é delimitado pelos caracteres “{“ e “}”. ( ) Na declaração da função, antes de seu nome, poderá ainda haver a precedência da palavra “function”. Agora, assinale a alternativa que traz sequência correta. Resposta Selecionada: V, F, V e F. Resposta Correta: V, F, V e V. Feedback da respo sta: Infelizmente, sua resposta está incorreta. Para responder essa questão, reflita sobre o fato de que para definir uma função temos que seguir uma sintaxe apropriada. Dentro da sintaxe, surge a questão: é possível passar parâmetros para uma função de Shell Script?
Compartilhar