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
 

Analise as assertivas abaixo sobre shell scripts no sistema operacional Linux:


I. Uma maneira de criar um literal em um shell script e fazer com que o shell deixe a string intocada é colocar a string toda entre aspas simples.

II. Um shell script deve sempre iniciar pela sequência de caracteres "barra" e "asterisco".

III. Um caractere "cifrão" no início de uma linha indica que a linha é um comentário, ou seja, o shell script irá ignorar tudo o que estiver na linha após o caractere.


Quais estão corretas?


A

Apenas I.


B

Apenas I e II.


C

Apenas I e III.


D

Apenas II e III.


E

I, II e III.

Com relação ao operador lógico de strings -n em BASH, ele retorna verdadeiro se:


A

a string não existir.


B

a variável for do tipo string.


C

a variável for de um tipo diferente de string.


D

o comprimento da string for diferente de zero.


E

o comprimento da string for zero.

Qual o nome do comando ou argumento do loop while em programação shell script que possibilita o parse, ou o correto processamento e obtenção dos valores passados como argumentos na forma de opções, ou flags; isto é, na forma de letras precedidas por hífen (por ex. sh ./meuscript.sh -a abc -b def), ao invocar, via linha de comando, um shell script bash no Linux?


A

arglist


B

getopts


C

parseopts


D

parseargs


E

optsparse

Assim como os comandos do sistema que possuem opções e parâmetros, os scripts shell também podem ser preparados para receber dados via linha de comando. Marque a opção que informa o número de argumentos passados na chamada de um shell script:


A

$@


B

$!


C

$#


D

$*


E

$$

Damos o nome de Shell Script a arquivos que serão interpretados pelos programas do tipo Shell. Com ele é possível criar vários comandos para o Linux. Assim, considere o seguinte Script Shell contido abaixo:


>_main.sh x +

1

2 cut -d : -f 1,5 /etc/passwd I tr : \ \t


A execução do script acima resultará:


A

Nos logins e nome dos usuários do sistema.


B

Em erro, pois o comando “\\t” não existe no Shell Script.


C

Nos subdiretórios contidos no diretório “/etc/passwd”.


D

Em uma lista de passwords dos usuários do sistema.


E

Em uma lista de arquivos contidos no diretório “/etc/passwd”.

Observe o conteúdo do shell script myscript.sh:


#!/bin/bash

echo "Argumento 1: $1"

shift

echo "Argumento 2: $1"

shift

echo "Argumento 3: $1"


O usuário executa o shell script myscript.sh utilizando o seguinte comando:

./myscript.sh arroz feijao batata


O que será a saída do shell script mysqcript.sh após sua execução?


A

Argumento 1: $1

Argumento 2: $1

Argumento 3: $1


B

Argumento 1: arroz

Argumento 2: arroz

Argumento 3: arroz


C

Argumento 1: arroz

Argumento 2: feijao

Argumento 3: batata


D

Argumento 1: batata

Argumento 2: feijao

Argumento 3: $arroz


E

arroz

arroz

arroz

Scripts shell costumam ser iniciados por um conjunto de caracteres denominado shebang, que tem como função definir qual interpretador será utilizado pelo script.


É correto afirmar que o conjunto de caracteres shebang é:


A

&&


B

$$


C

#!


D

&$


E

/*

Um administrador de um computador com sistema operacional Linux construiu o arquivo shell script de nome sumts.sh, visto na Figura 1, usando o Bourne Shell.

Figura 1 -Arquivo Shell Script sumts

#!/bin/sh

while $entrada

do

if [ $entrada -eq 1 ]; then

soma=$( expr 10 + 10)

echo "$soma"

break

elif [ $entrada -eq 2 ]; then

soma=$(expr 20 + 10)

echo "$soma"

break

elif [ $entrada -eq 3]; then

soma=$(expr 0+ 10)

echo "$soma"

break

else

soma=$(expr 10 + 30)

echo "$soma"

break

fi

done

Ao executar esse script na sequência ./sumts.sh 0, o resultado apresentado será:


A

10


B

20


C

30


D

40

No sistema operacional Linux, em shell scripts para bash, a expressão $! fornece como conteúdo o


A

número de argumentos passados como parâmetros na chamada do script pela linha de comando


B

código de status de saída do último comando executado.


C

UID (user ID) do usuário logado que está executando o script.


D

diretório corrente onde o terminal que executou o script está posicionado.


E

PID (process ID) do último job executado em background.

Sobre as I linguagens de script: Shell Scripts (bash); Windows PowerShell 3.0; Python, analise os códigos abaixo.


I -

mkdir src

new-item src\list-directory-contents. py

II -

count = O

while count < 5:

print( count)

count += 1

III -

# !/bin/bash

function valor {

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

echo $[num]

}

saida= 'valor'

echo "O valor do status retornado é $saida"


Assinale a alternativa que contenha a sequência correta com a linguagem do código que está descrito nos itens I, II e III, respectivamente.


A

PowerShell, Python e Shell Scripts (bash).


B

PowerShell, Shell Scripts (bash) e Python.


C

Python, PowerShell e Shell Scripts (bash).


D

Python, Shell Scripts (bash) e PowerShell.


E

Shell Scripts (bash), Python e PowerShell.

Em um arquivo de shell script para o sistema operacional Linux, foi encontrado o seguinte conteúdo na primeira linha:


#!/bin/sh


Dentre as alternativas a seguir, com base em nomes de arquivos padrões de shells, trata-se de uma indicação de que o script deve ser interpretado pelo


A

Bourne-Again Shell.


B

C Shell.


C

Power Shell.


D

Korn Shell.


E

Bourne Shell.

Ano: 2022
Prova: COMPEC - UFAM - Técnico em Tecnologia da Informação - 2022

Shell script refere-se a um arquivo que será interpretado por algum programa tipo Shell. Assinale a alternativa CORRETA correspondente a um programa tipo Shell:


A

bash


B

gash


C

linussh


D

shebang


E

unixsh

Considere o seguinte shell script para bash:


#!/bin/bash

echo -n "Digite o nome: "

read name

lista=$(cat lista.txt)

for i in $lista; do

echo $i

ssh $i "sudo useradd -m $name"

if [ $? -eq 0 ]; then

echo "Sucesso em $i"

else

echo "Erro em $i"

fi

done


Considerando que o script inicia apresentando um prompt para digitação de um valor a ser armazenado na variável name e que as eventuais conexões SSH são bem-sucedidas, esse script tem por objetivo criar,


A

no computador onde o script é executado, os usuários especificados no arquivo lista.txt.


B

no computador cujo nome ou endereço na rede está na variável name, os usuários especificados no arquivo lista.txt.


C

nos computadores cujos nomes ou endereços na rede estão especificados no arquivo lista.txt, um usuário cujo nome corresponde ao valor da variável name.


D

nos computadores cujos nomes ou endereços na rede estão especificados no arquivo lista.txt, um usuário com o mesmo nome do usuário logado na sessão que executa o script.


E

nos computadores cujos nomes ou endereços na rede estão especificados no arquivo lista.txt, os usuários cujos nomes estão especificados no arquivo de nome armazenado na variável name.

Em um shell script para bash no sistema operacional Linux, foi encontrada a seguinte linha:


trap f SIGINT


Essa linha tem por objetivo


A

enviar o sinal SIGINT para a função f.


B

associar a função SIGINT como tratadora de exceções que possam ocorrer na execução da função f.


C

definir que o identificador f é um alias para SIGINT, podendo-se usar o primeiro no lugar do segundo no código subsequente.


D

impedir que o terminal onde o script está sendo executado seja fechado enquanto a função f estiver em execução.


E

associar a função f como o tratador de evento para o pressionamento de Ctrl+C durante a execução do script.

O arquivo exec.sh contém o código a seguir.


#!/bin/sh

echo $ !


A execução do referido arquivo terá o seguinte resultado.


banco do nordeste

. /exec.sh banco do nordeste


C

Certo


E

Errado

Um shell script para bash em um computador com sistema operacional Linux contém a seguinte declaração de função:


myFunction () {

mkdir -p $1

}


É correto afirmar que a


A

função myFunction está declarada incorretamente, pois não aceita receber parâmetros, mas precisa utilizar um parâmetro em seu funcionamento.


B

função myFunction pode ser chamada com qualquer número de parâmetros, mas usa somente o primeiro deles.


C

função myFunction pode ser chamada com qualquer número de parâmetros, mas usa somente o segundo deles.


D

função myFunction pode ser chamada apenas com um único parâmetro. Sua chamada sem parâmetros ou com mais de um parâmetro ocasiona um erro.


E

chamada à myFunction dentro do mesmo script deve ser feita sem parâmetros, sendo que será utilizado o primeiro parâmetro passado na linha de comandos no lugar de $1.

Assinale a alternativa correta a respeito do seguinte shell script para Linux.


#!/bin/bash

for name in $(cat a);

do

rm $name

done

exit


Considere que a execução desse script não enfrenta problemas relativos a permissões de acesso.


A

Ao ser executado, o script exclui os arquivos cujos nomes estão contidos no arquivo chamado a, supondo que sejam arquivos existentes.


B

Ao ser executado, o script exclui os arquivos contidos no diretório chamado cat.


C

Ao ser executado, o script apresenta um prompt para o usuário digitar uma lista de nomes de arquivos. Os arquivos cujos nomes foram digitados são, então, excluídos, supondo que sejam arquivos existentes.


D

Ao ser executado, o script exclui os arquivos cujos nomes estão contidos no arquivo chamado cat, supondo que sejam arquivos existentes.


E

Está sintaticamente incorreto, produzindo um erro de execução ao ser chamado.

   
Gerar simulado