Baixe o app para aproveitar ainda mais
Prévia do material em texto
PROGRAMAÇÃO PARA SERVIDORES 6.COMANDOS 3 - SUBSTITUIÇÃO, REDIRECIONAMENTO E STRINGS 1.Qual das opções abaixo corresponde a função do código representado na linha 5 do scrip a seguir: 1. #!/bin/bash 2. echo "Informe o nome do arquivo" 3. read arquivo 4. pos=expr∈dex$arquivo. 5. tamtotal=${#arquivo} 6. tamarq=expr$pos-1 7. tamext=expr${#arquivo}-$pos 8. echo "Tamanho ==> $tamtotal" 9. echo "Tamanho ==> $tamarq" 10. echo "Tamanho ==> $tamext" Número total de caracteres da variável "arquivo". 2.O diretório /home/alunos possui diversos arquivos .txt com listas de nomes de alunos. Qual o comando que lê os nomes em todos os arquivos, os ordena, elimina os nomes duplicados e os salva em resultado.txt Com o comando : cat /home/alunos/*.txt | sort | uniq > resultado.txt 3.Para remover todos os arquivos do disco cujo nome possui terminação .tmp utilizamos:find / -name \*.tmp -exec rm {} \; 4.Qual das expressões regulares abaixo é capaz de representar corretamente horas válidas, no intervalo entre 00:00 e 23:59?([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9] 5.Um perito forense computacional, deseja utilizar expressões regulares para varrer um disco de um suspeito e achar placas de carro. Qual seria a expressão mais indicada para isso?[A-Za-z]{3}[-]?[0-9]{4} 6.Qual o comando que informa a quantidade de caracteres de uma variável str? echo "A string str possui ${#str} caracteres." echo "A string str possui ${#str} caracteres.¿ 7.Qual o comando para localizar todas as linhas do arquivo passwd que terminem com a letra m ? grep $´m´ /etc/passwd. 8.Marque a opção que define o que será executado pelo comando abaixo $ who | more . A lista de usuário logados. 9.Qual o comando que exibe o número e conteúdo das linhas de /etc/smb.conf que contenham a expressão users?cat -n /etc/smb.conf | grep "users" 10.O comando ls -la /etc | grep -V A exibe: A lista de arquivos e diretórios em /etc exceto os arquivos e diretórios cujo nome contenha o caracter ¿A¿ 11.Qual o comando que exibe os arquivos em /etc que tenham seu nome NÃO seja iniciado pelas letras entre m e p ? ls /etc | egrep '^[^m-p]' 12.Jonas tem um arquivo contendo os dados de identificação dos usuários e timestamp de acesso ao sistema de Comércio Eletrônico. Ele desja saber quais os acessos do usuário: CARLOS. Você recomendaria usar qual comnado?grep 13.Qual das opções abaixo etá correta a respeito do script que se segue: 1. @echo off 2. cls 3. ping %1 > conexao.txt: Cria um arquivo cujo conteúdo é o resultado do comando ping, sobrescrevendo o anterior. 14.Qual das opções abaixo está correta a respeito do script a seguite: 1. clear 2. cat conexao.txt >> configuracao.txt: Cria um arquivo cujo conteúdo é o resultado do comando cat sobre o arquivo conexao.txt, não sobrescrevendo o o arquivo de destino. 15.Um administrador de sistemas operacionais recebeu um pedido do Centro de Resposta a Incidentes de Segurança da Informação da empresa que ele trabalha. Esse centro, procurava indícios de vazamento de informação confidencial. De forma a contribuir na investigação, o administrador extraiu dois logs de servidores que ele administrava: um dos logs, é referente ao access.log ¿ disponibilizado pelo servidor Web Apache; o outro, é um arquivo produzido pelo firewall IPtables que mostra os registros de data/hora e ip. Nesse sentido, quais comandos do Unix poderiam ajudar esse administrador a juntar os dois logs em um arquivo para facilitar a análise?join e cut 16.Marque a opção que explica o que faz o comando abaixo. $ ps aux | grep fulano Lista todos os processos pertencentes ao usuário fulano 17.A execução de comandos no shell pode ser modificada através de operadores especiais. Um desses operadores, é conhecido como redirecionamento. Utilizando o operador de redirecionamento com o comando ls, da seguinte maneira: ls >> lista, teremos como resultado: O envio da listagem realizada pelo comando ls para o arquivo lista. 18.Marque a opção que descreve o que faz o comando abaixo: $ls -l | wc -l Mostra quantos arquivos existem no diretório corrente 19.Qual o comando usado unir registros de arquivos diferentes que possuam uma chave em comum com os dados ordenados por tal chave?join 20.Qual das opções abaixo melhor responde o resultado do script a seguir: 1. #!/bin/bash 2. echo "Informe o nome do arquivo" 3. read arquivo 4. pos=expr∈dex$arquivo. 5. tamtotal=${#arquivo} 6. tamarq=expr$pos-1 7. tamext=expr${#arquivo}-$pos 8. echo "Tamanho ==> $tamtotal" 9. echo "Tamanho ==> $tamarq" 10. echo "Tamanho ==> $tamext" Recebe um nome de arquivo com extensão e escreve ao final o número total de caracteres do arquivo, do nome e da extensão. 21.Qual o comando usado para ler o arquivo nomes.txt, ordenar as linhas de forma alfabética e salvar a solução em ordenados.txt?sort < nomes.txt > ordenados.txt 22.Considere a seguinte expressão regular: [0-9]{4,5}[-.]?[0-9]{4}. O que ela é capaz de encontrar?O número de telefone 23.Considerando a execução do comando tr com os operadores de redirecionamento, como em: tr -d '\r' < nome.sh > nome2.sh, o resultado será: Será removido o caractere \r em cada linha do arquivo nome.sh e o resultado será copiado para o arquivo nome2.sh 24.Qual o programa usado para rearranjar campos a partir de arquivos texto, lendo uma linha por vez do arquivo de entrada e para cada linha aplicando os comandos especificados para a linha ? awk 7.PROGRAMAÇÃO AVANÇADA 1 - SCRIPTS COM JANELAS 1.A sintaxe básica de um comando do dialog é: dialog --W '' # onde W, X, Y e Z, são, respectivamente tipo, texto, altura, largura 2.Qual o trecho de código que abre uma caixa de diálogo que possui um campo para digitar o nome e, em seguida cria um novo usuário a partir do nome digitado? nome=$(dialog --stdout --title 'Novo usuário?' --inputbox 'Digite o nome:' 0 0) ./adduser $nome 3.Uma caixa de diálogo pergunta ao usuário se deseja executar install.sh. Qual o script abaixo que realiza esta ação corretamente: dialog --title 'Atenção' --yesno 'Deseja instalar?' 0 0 if [ $? = 0 ] then ./install.sh echo "Respondeu que sim." else echo "Respondeu que não." fi 4.No dialog o tipo que permite selecionar mais de uma opção é: checklist 5.As caixas do dialog que solicita a digitação de um texto, a caixa que mostra uma mensagem sem botões e a caixa que exibe uma mensagem e um botão aceitar são, respectivamente?inputbox, infobox e msgbox 8.PROGRAMAÇÃO AVANÇADA 2 - FUNÇÕES 1.Considerando o código abaixo qual valor será mostrado através da variável soma? func () { local soma let soma=$1+$2 echo "$1 + $2 = $soma" } soma=8 func 2 3 echo "$soma"? 8 2.No script abaixo qual o valor que será exibido na tela? #!/bin/bash func () { let soma=$1+$2 } soma=8 func 2 3 echo "$soma"? 5 3.No script abaixo qual o valor que será exibido na tela? #!/bin/bash func () { local soma let soma=$1+$2 } soma=8 func 2 3 echo "$soma"? 8 4.Qual o resultado da execução do script apresentado? function fatorial() { if [ $1 -le 1 ]; then return 1 else fatorial $(($1 - 1)) return $(( $1 * $? )) fi } fatorial 5 echo $? 120 5.O trecho de código que calcula e exibe o quadrado do número digitado utilizando uma função é: function quadrado () { q=$1 * $1 echo $q } read ¿ p ¿Digite um número: ¿ x quadrado $x 9.PROGRAMAÇÃO AVANÇADA 3 - PESQUISA E SUBSTITUIÇÃO 1.Para obtermos o número de caracteres em uma string podemos usar o seguinte comando: ${#string}, onde string é a variável com o conteúdo 2.São exemplos de comandos internos que, usualmente, podem ser utilizados em Shell Script, EXCETO: print, get, update, date 3.O comando utilizado para exibir as mensagens emitidas durante o processo de inicialização do sistema é: dmesg 4.Qual o comando no shell script que irá receber o valor digita pelo usuário ?read 10.PROGRAMAÇÃO AVANÇADA 4 - ARQUIVOS, SUBSHELL, SHELL RESTRITO .. 1.Qual o comando para encontrar, a partir do home do usuário atual, apenas arquivosque comecem com a letra "a" e tenham sido modificados há menos de 5 dias. find ~/ -type f -name "a*" -mtime -5 2.Considerando que, o seguinte trecho de código foi inserido no arquivo aula-10.sh #!/bin/bash ( while [ 1 ] do sleep 1 echo "Dentro do loop 1 ..." done ) Após execução desse programa, abriu-se um outro terminal e digitou-se o seguinte comando: ps -ef | grep aula-10.sh Considerando esse cenário, marque a alternativa VERDADEIRA. É possível verificar que, o resultado do comando ps -ef | grep aula-10.sh mostrará pelo menos duas linhas, visto que, o interpretador shell abrirá dois processos para o script do enunciado. 3.Qual a linha a ser adicionada no crontab para que o script /etc/backup.sh seja executado entre segundas e sextas-feiras às 10 horas da noite ?0 22 * * 1-5 /etc/backup.sh 4.Quais comandos um Administrador precisa efetuar para criar um arquivo de fita chamado FITA.tar com o conteúdo de todos os arquivos do diretório /home/estacio/PS2017 e compactá-los?tar -cvf FITA.tar /home/estacio/PS2017; gzip FITA.tar 5.Qual o comando que agenda a execução de /etc/aula.sh às 07:30 da manhã de 02 de junho de 2017?at -t 201706020730 -f /etc/aula.sh 6.Para obtermos as linhas 10, 11, 12, 13, 14 e 15 do arquivo /etc/passwd utilizamos:head -15 /etc/passwd | tail -5 7.Um determinado script possui o trecho de código abaixo: ( while [ 1 ] do sleep 1 done ) ( while [ 1 ] do sleep 1 done )& ( while [ 1 ] do sleep 1 done ) Caso em outra janela fosse dado o comando: ps ¿ef|grep q5.sh Qual seria a resposta coerente entre as opções abaixo? [root@professor scripts]# ps -ef|grep q5.sh root 20584 2653 0 14:17 pts/1 00:00:00 /bin/bash ./q5.sh root 20585 20584 0 14:17 pts/1 00:00:00 /bin/bash ./q5.sh root 20677 2671 0 14:18 pts/2 00:00:00 grep q5.sh 8.A execução do script teste1.sh abaixo apresentará como resultado na tela: #!/bin/bash cd /etc pwd set -r cd /home pwd /etc , ./teste1.sh: line 5: cd: restricted e /etc 9.Os comandos tar e gzip são utilizados, respectivamente para:Agrupar vários arquivos em somente um e compactar arquivos 10.Crie no servidor uma linha de agendamento do script /tmp/teste.sh que seja executada todas as sextas-feira às 2:30 da manhã do mês de maio:30 2 * 5 5 /tmp/teste.sh 11.A execução do script teste1.sh abaixo apresentará como resultado na tela: #!/bin/bash cd /etc pwd set -r cd /home pwd /etc , ./teste1.sh: line 5: cd: restricted e /etc
Compartilhar