Amauri, na questão 2 não tenho dúvidas que é a letra c é a correta, 
nenhuma das outras opções está correta, pois:

alt. a ) Exibe os arquivos, apesar do "endfor", que o shell processa 
como sendo um comando e dá erro dizendo que não existe;
alt. b) a sintaxe do "$(ls)" está errada.
alt. c) sintaxe correta
alt. d) mesma coisa que a alt. b, sintaxe errada, não exibe nada e o 
"rof" o shell processa como sendo um comando e dá erro que não existe
alt. e) a sintaxe está errada no $N

Sem dúvida, apenas a c está correta.

Na 1, até aonde eu sei, apenas caracteres alfanumericos podem ser 
utilizados, portanto diria que a alt. "a" é a correta.


É isso ai.

amaurimarx wrote:
>
> Boa tarde galera...
>
> Tenho 2 questões que caiu no concurso do Tribunal de Justiça do RS e
> acredito que no gabarito saiu a resposta errada, porém antes de
> qualquer interpretação estou encaminhando pra esta lista de discussão
> que eu sei que tem gente que manja muito (inclusive se o Júlio Cezar
> Neves puder dar seu parecer, ficaria muito grato). Em uma próxima
> mensagem mando o resultado das questões, mas já antecipo que para mim
> as respostas b e c da questão 2 estão corretas.
>
> Obs.: Peço desculpas se este assunto foge ao escopo da lista, mas
> acredito que é bom para o entendimento de todos.
>
> Segue as questões:
>
> 1) Em um shell script usando bash, que tipo de dado pode ser utilizado
> como padrão de seleção no comando "case"?
> a) Literais alfanuméricos
> b) Apenas números
> c) Variáveis do tipo string
> d) Resultado de uma expressão aritmética
> e) Qualquer tipo de dado existente no bash
>
> 2) Qual dos trechos de shell script abaixo lista os nomes dos arquivos
> presentes no diretório de execução do shell?
> a) for N in `ls`; do echo $N; done; endfor
> b) for N in $(ls); do echo $N; done
> c) for N in `ls`; do echo $N; done
> d) for N in [ls]; do echo $N; done; rof
> e) for $N in `ls`; do echo N; done
>
> Desde já agradeço a todos,
> Amauri
>
>  

Responder a