Questões de Concurso sobre Shell Script

 
 
Disciplina 1
Assunto 1
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
99 questões encontradas
Questões por página
20
Mais recentes
 

O administrador de um servidor Linux deseja configurar o crontab para que o script report.sh seja executado a cada hora. Para tal, ele deverá adicionar no crontab a linha:


A

0 * * * * report.sh


B

* 0 * * * report.sh


C

* * 0 * * report.sh


D

* * * 0 * report.sh


E

* * * * 0 report.sh

Um desenvolvedor está criando um contêiner, no entanto, é necessário rodar automaticamente um script personalizado na execução, após a inicialização do contêiner. Considerando isso, assinala a afirmativa que contém a maneira correta de definir esse comportamento no arquivo Dockerfile.


A

Utilizar a instrução RUN para especificar o script.


B

Usar a instrução EntryPoint ou CMD para especificar o script a ser executado.


C

Configurar o script na variável SCRIPT_PATH usando a instrução ENV.


D

Adicionar o script ao diretório /bin do contêiner por meio da instrução COPY, sem outras alterações.


E

Utilizar a instrução EXPOSE para indicar o local em que o script será executado.

Em um script de automação, dois contadores estão sendo utilizados para rastrear tentativas de conexão e reconexão a um serviço. O primeiro contador(a) armazena o número de tentativas já realizadas, enquanto o segundo (b) contabiliza o número de falhas consecutivas. Analise o trecho a seguir:


Imagem associada para resolução da questão


Considerando o comportamento da aritmética em shell script com operadores de pré e pós-incremento, qual será a saída impressa pelo comando echo? Assinale a alternativa correta:


A

Gera erro de sintaxe por uso de operadores inválidos


B

8.


C

7.


D

9.


E

10.

Analise o seguinte script que usa a instrução awk:


#!/bin/bash


echo "chave1=valorA;chave2=valorB" | awk -F '[=;]' '{ print $2, $4 }'


Considerando o funcionamento do comando awk com os parâmetros utilizados, assinale a alternativa que representa a saída exata deste script:


A

chave1 chave2


B

chave1=valorA chave2=valorB


C

valorA valorB


D

valorA;chave2


E

A B

Com base no script abaixo, desenvolvido a partir de Shell Script, analise as assertivas abaixo, assinalando V, se verdadeiras, ou F, se falsas.


ip -bra | grep UP

ss -tuln | grep LISTEN

cat /proc/sys/net/ipv4/ip forward


( ) O comando ip -br a | grep UP lista todas as interfaces de rede que estão ativas no sistema.

( ) O comando ss -tuln | grep LISTEN exibe as conexões TCP e UDP atualmente estabelecidas com outros hosts.

( ) O arquivo /proc/sys/net/ipv4/ip forward indica se o sistema está configurado para encaminhar pacotes IPv4.

( ) O script verifica se o firewall UFW está instalado e mostra seu status se disponível.

( ) O comando cat /proc/sys/net/ipv4/ip forward retorna “1” quando o IP forwarding está desativado.


A ordem correta de preenchimento dos parênteses, de cima para baixo, é:


A

V-V-F-F-F.


B

V-F-V-V-F.


C

V-F-F-V-V.


D

F-V-V-F-V.


E

F-F-V-V-F.

Certo programador deseja escrever em uma única linha de comandos um código em Bash que verifica se o valor digitado como entrada é negativo. Caso seja verdade, o código continua em execução, e solicita nova entrada, até que um valor maior ou igual a zero seja digitado.

Nesse caso, é impresso na tela do terminal o número zero e a execução é encerrada. Considere que apenas números inteiros são dados como entrada.


Assinale a opção que apresenta o comando em Bash que executa o desejado.


A

while read n; do if [ n -lt 0 ]; then y=1; else y=0 && break; fi; done; echo y


B

while read $n; do if [ $n -lt 0 ]; then $y=1; else $y=0 && break; fi; done; echo $y


C

while read n; do if [ $n -lt 0 ]; then y=1; else y=0 && break; fi; done; echo $y


D

while read $n; do if ( $n -lt 0 ); then y=1; else y=0 && break; fi; done; echo $y


E

while read n; do if ( n -lt 0 ); then y=1; else y=0 && break; fi; done; echo y

Com relação à programação de shell scripts, analise as afirmativas a seguir.


I. Os dois caracteres “#!” quando inseridos no início da primeira linha de um shell script servem para indicar o interpretador a ser usado para o programa.

II. Para escrever uma linha de comentário em bash, deve-se utilizar o caractere “#” no início da mesma.

III. A linha de comando a=1 | echo, escrita em bash, imprime o número 1 na tela do terminal.


Está correto o que se afirma em


A

I, apenas.


B

II, apenas.


C

I e II, apenas.


D

II e III, apenas.


E

I, II e III.

Seja o arquivo enigma.sh contendo o código apresentado a seguir.



Imagem associada para resolução da questão


Utilizando um terminal bash, a execução do script ./enigma.sh 3 resulta em:


A

4.


B

8.


C

9.


D

16.

Qual das alternativas abaixo deve constar no início de um script shell para que seja utilizado o bash como interpretador de comandos do script?


A

/*bash*/


B

#!/bin/bash


C

//bin/bash-sc


D

#bash-script


E

!bash

Analise o código em Shell Script (Bash) abaixo e em seguida assinale a resposta correta.


Imagem associada para resolução da questão


Assinale a alternativa que apresenta o comportamento do script.


A

O script soma todas as linhas do arquivo, independentemente do conteúdo, e imprime a soma


B

O script soma apenas as linhas que contêm números inteiros e ignora as linhas que possuem outros caracteres


C

O script soma os números presentes em cada linha, mesmo que estejam misturados com outros caracteres


D

O script verifica o arquivo e imprime todas as linhas do arquivo, somando apenas as que contêm números pares

Considere o seguinte Shell script escrito em Bash:

#!/usr/bin/env bash

echo -e "Digite o valor de n: "

read n

for((i=2; i<=$n/2; i++))

do

auxiliar=$(( n%i ))

if [ $auxiliar -eq 0 ]

then

echo 0

exit 0

fi

done

echo 1


Com relação ao script acima, analise as afirmativas a seguir.


I. No caso de o usuário digitar 24 para o valor de n, o número a ser impresso na tela é 0.

II. No caso de o usuário digitar 23 para o valor de n, o número a ser impresso na tela é 1.

III. O script verifica se o valor de n é par ou ímpar.


Está correto o que se afirma em


A

I, apenas.


B

II, apenas.


C

III, apenas.


D

I e II, apenas.


E

I, II e III.

Um operador de um sistema Linux, utilizando a linguagem de script bash, digitou o seguinte script:


#!/bin/bash

add (){

sum=$(($1+$2))

if [ $sum -lt 10 ];

then

sum=$(($1*$2))

else

sum=$(($1-$2))

fi

return $sum

}

read -p "Entre numero1: " int1

read -p "Entre numero2: " int2

add $int1 $int2 echo "o resultado = " $?


E gravou o arquivo como teste.sh.


Caso seja executado o “bash teste.sh”, tendo como entradas os números 7 e 3, o resultado será


A

3


B

4


C

7


D

10


E

21

Considere os seguintes trechos de código, um em PowerShell e outro em Shell Script (Bash), que possuem a mesma finalidade:


Imagem associada para resolução da questão


Ambos os códigos mostrados realizam a cópia de arquivos com a extensão .txt de uma pasta de origem para uma pasta de backup. Considerando o comportamento esperado de cada script, assinale a opção correta.


A

O código PowerShell pode gerar um erro se a pasta de backup não existir, enquanto o script Bash irá criar a pasta automaticamente.


B

O código em PowerShell pode ser executado diretamente no Windows sem necessidade de software adicional, enquanto o código em Bash requer a instalação de um ambiente Unix no Windows.


C

Ambos os scripts estão incorretos, pois os comandos CopyItem e cp não realizam cópia recursiva.


D

O código Bash é mais seguro que o PowerShell, pois impede o sobrescrita de arquivos no destino sem confirmação.


E

O código PowerShell possui melhor desempenho que o Bash, pois é uma linguagem compilada.

Um administrador de um servidor Linux escreveu o seguinte arquivo de script em bash


#!/usr/bin/env bash

ROOT_UID=0

data=`date +%d-%m-%y-%H:%M`

origem=/etc

destino=/final

fazer() {

tar -cjvf $destino/fnz-$data-usr.tar.bz2

$origem

}

userok() {

if [ "$UID" -ne "$ROOT_UID" ]

then

echo ""

echo "ERRO"

echo ""

exit $E_NOTROOT

fi

}

userok

if [ -d $destino ]

then

fazer

else

if [ -f $destino ]

then

echo "ERRO"

sleep 2

else

mkdir $destino

fazer

fi

fi


Esse script representa uma ação de administração do computador que é


A

apagar arquivos inúteis.


B

realizar o backup do servidor.


C

atualizar do sistema operacional do computador.


D

Instalar um sistema de segurança baseado no kubernete.


E

verificar o quanto do disco principal está útil para inserção de novos arquivos.

A partir do shell script:


#!/bin/bash

# Diretório que será verificado

dir_mpe_ro="/backup/mpe/arquivos"

# Rotina a ser executada

find "$dir_mpe_ro " -type f -mtime +15 -exec rm {} \;


E considerando que todos os arquivos estão localizados no diretório /backup/mpe/arquivos, o resultado será:


A

exibir na tela os arquivos que tenham sido alterados nos últimos 15 dias.


B

exibir na tela os arquivos que tenham sido criados há 15 dias.


C

excluir os arquivos cuja última modificação tenha sido realizada há 15 dias.


D

excluir os arquivos que tenham sido criados há 15 dias.

Em programação de scripts shell, A list é uma sequência de um ou mais pipelines separados por operadores. São operadores válidos nesse parâmetro, exceto:


A

| |


B

&


C

&&


D

;


E

!

Um script bash (Bourne-Again Shell) definiu um array chamado files para fazer o armazenamento de nomes de arquivos da seguinte forma:


files=("f1.txt" "f2.txt" "f3.txt" "f4.txt" "f5.txt")


Para imprimir o terceiro elemento do array files, cujo valor é f3.txt, deve-se usar o seguinte comando:


A

echo ${files[2]}


B

echo ${files[3]}


C

echo $files[2]


D

echo $files[3]


E

echo files$[3]

O seguinte shell script para bash, no sistema operacional Linux, solicita que o usuário digite um número natural e informa se ele é par ou ímpar. Um trecho do script foi propositalmente ocultado e substituído pela lacuna indicada por “_____”.


#!/bin/bash

read -p "Digite um número: " n

if [ _____ -eq 0 ]

then

echo "Par"

else

echo "Ímpar"

fi


Para que o script funcione corretamente, o conteúdo da lacuna deve ser


A

n mod 2


B

$((n%2))


C

$(($n/2))


D

((n/2))


E

(n%2)

Ano: 2024
Prova: CESPE/CEBRASPE - CNJ - Analista Judiciário - Área Apoio Especializado - Especialidade Análise de Sistemas - 2024

Considere o seguinte shell script.


#!/bin/bash

N=6

a=0

b=1

for (( i=0; i<N; i++ ))

do

echo -n “$ a “

c=$ ((a + b))

a=$ b

b=$ c

done


O resultado da execução desse script é o apresentado a seguir.


1 1 2 3 5 8


C

Certo


E

Errado

Um usuário administrador de um sistema Linux está programando um shell script que será interpretado no bash.


Para conseguir, dentro do script, a informação de quantos argumentos foram passados no momento da execução do script, ele pode utilizar a variável reservada:


A

$0


B

$!


C

$?


D

$$


E

$#

   
Gerar simulado