-
Letra C.
Os comandos do Linux dificilmente são cobrados em provas e, a rigor, assim como um usuário comum do Windows pode viver perfeitamente sem que jamais precise digitar uma única linha no "Prompt de comando", um usuário comum do Linux também pode viver perfeitamente sem saber um único comando do "Terminal". De qualquer forma, é bom ressaltar que os recursos do Linux em termos de linha de comando são tremendamente mais poderosos que os do Windows. Dito isso, vamos à questão.
Em primeiro lugar... o que é # ls -l? Bom, o comando em si é apenas o ls (list directory) que exibe o conteúdo de um diretório. Só que a gente pode colocar alguns parâmetros pra modificar a forma de exibição dos dados ou, ainda, filtrá-los. É sobre isso que trata a questão. Num exemplo real... vou usar o comando ls em um diretório chamado sed de minha máquina. O resultado será:
[jayme@bach sed]$ ls
DominandoSed.pdf sed-HOWTO.html
Agora, se eu usar o ls -l. O resultado será:
[jayme@bach sed]$ ls -l
total 392
-rw-rw-r--. 1 jayme jayme 343912 Abr 27 2011 DominandoSed.pdf
-rw-rw-r--. 1 jayme jayme 56498 Abr 27 2011 sed-HOWTO.html
Reparem que os arquivos foram listados de forma mais completa. O -l, portanto, indica um formato de exibição mais longo, mais detalhado.
E o Sinal # exibido na frente do comando? Esse aí não tem absolutamente nada a ver com o comando em si. É apenas um caracter indicativo a respeito do "nível" do usuário que está operando a máquina. No caso, o # significa que o usuário administrador (root) está operando a máquina. Nos exemplos que eu postei, o sinal exibido antes do comando é um $, já que meu perfil é comum e não administrador. Sobre as alternativas propriamente ditas, acho que o V e F falam por si:
(V) Os comandos #ls -l file1 file2 file3 file04 e #ls -l file* exibirão omesmo resultado.
(F) O comando #ls -l file? exibirá como resultado os quatro arquivos contidos no diretório.
(V) O comando #ls -l file[2-3] exibirá como resultado apenas os arquivos file2 e file3.
(V) O comando #ls -l file0* file[1-3] exibirá como resultado os quatro arquivos contidos no diretório.
(F) O comando #ls ~ exibirá como resultado uma lista de todos os arquivos que foram excluídos do diretório.
-
Ainda sou leiga no Linux, pessoal, se puderem me ajudar:
1) O comando #ls -l file? estaria correto se fosse "comando #ls -l ?" ?
2)O que significa o "file0*" no comando "#ls -l file0* file[1-3]"? E para exibir o resultado de todos os quatro arquivos, não seria ""#ls -l file0* file[1-4]"?
3) Qual o erro do comando "#ls ~"? Qual seria o comando correto para listar arquivos excluídos do diretório?
Mais uma vez, peço perdão, acredito que esteja sendo repetitiva e até que o colega tenha explicado acima. Mas estou com dificuldades em Linux, é a primeira vez que tenho contato com a matéria e está complicado assimilar sozinha...
Obrigada!
-
1) O comando #ls -l file? estaria correto se fosse "comando #ls -l ?" ?
Não. A questão aqui é o significado da interrogação. Qual o seu papel nos comandos. É simples: no lugar de uma interrogação você pode colocar qualquer caracter, mas um só! Exemplo:
file? = file1, fileA, file9, filex, e por aí vai. Já se você usar a interrogação sozinha, estará se referindo a arquivos cujos nomes sejam compostos por um único caracter. Tipo, a, X, W, z, etc. Sendo assim, os comandos ls -l file? e ls -l ? ? retornam resultados bem diferentes.
2)O que significa o "file0*" no comando "#ls -l file0* file[1-3]"? E para exibir o resultado de todos os quatro arquivos, não seria ""#ls -l file0* file[1-4]"?
O Linux é cheio de alternativas interessantes em relação aos comandos. Só que essas alternativas confundem um pouco quem não está acostumado a elas. Mas é simples entender. Veja só, o asterisco signica qualquer coisa. Literalmente. Assim, file0* pode ser, por exemplo, file0chuchu, file00, file0abobrinha, file0qualquercoisa, file0blablabla, etc, ou até mesmo file0 apenas. O asterisco a gente troca por qualquer coisa que quisermos, mas o file0 terá que estar lá, já que digitamos file0*. Já o [1-3] significa um caracter que faça parte do conjunto 1, 2 ou 3. E só. Assim, file[1-3] só retornará file1, file2 ou file3. A propósito, poderiamos escrever coisas como arquivo[1-9], diretório[0-5], documento[a-z], etc.
Considerando isso tudo, se no diretório em questão há os arquivos file1, file2, file3 e file04 (se ligue no 0!), é suficiente usar ls -l file0* file[1-3] já que,
file0* => file04
file[1-3] => file1, file2, file3
Mas o comando que você propôs também funcionaria, ok? Só que não está nas alternativas.
3) Qual o erro do comando "#ls ~"? Qual seria o comando correto para listar arquivos excluídos do diretório?
O til (~) significa diretório do usuário. Assim, ls ~ listará os arquivos do diretório principal do usuário root. A propósito, o caracter # antes dos comandos indica justamente isso: o comando (qualquer que seja) está sendo executado pelo usuário root, que é o administrador no Linux. Se fosse um usuário comum, ao invés do # apareceria $. Mas atenção: esses caracteres não fazem parte dos comandos! No caso em questão, portanto, o comando é ls e não #ls.
Comando pra listar arquivos excluídos? Esqueça isso. Não que seja impossível, mas vai depender de coisas como o sistema de arquivos utilizado e seus recursos para recuperação. Em alguns casos nem daria. Trata-se, no caso dessa questão, de uma espécie de pegadinha.
Espero ter ajudado a clarear um pouco mais as coisas...! :)
-
Se os arquivos são file1 file2 file3 e file4 alguém pode me explicar como o comando #ls -l file0* file[1-3] exibirá como resultado os quatro arquivos contidos no diretório? Gosh!
-
Na moral, já não vejo muita lógica em informatica para concurso nível médio,na minha opinião deveria ser somente exigida matéria para o pessoal da área e ainda colocam uma questão dessa como noções de informatica?
-
SOCORRO!!!!!! Viva ao Bill Gates!!!! A única que deu pra entender foi a 3ª, podendo excluir 2 alternativas..............
Desculpe-me pelo desabafo, mas assim como quem cuida da saúde é o médico e quem cuida dos processos é o advogado.... quem usa o LINUX é quem é ou tem algum curso na área de informática....
é um desrespeito ao concurseiro, que não é formado em informática, perguntar sobre COMANDOS DO LINUX!
Alguém sabe onde encontro (na internet e em site seguro) os comandos desse SO????
Obrigada!
-
Essa questão nada a ver com o cargo, além de exigir conhecimento mais específico no Linux e não conhecimento básico. Vou nem perder meu tempo, por enquanto.
-
Na boa, noções de informática para mim é saber que o comando ls lista arquivos. O que vem além disso já é um conhecimento mais aprofundado para cargos específicos na área da informática. Esse tipo de questão é muita sacanagem, ainda mais que temos outras matérias para estudar ¬¬
-
Meu Deus, que questão foi essa???? Que tiro hein... rs
-
nunca nem #vi file0
-
Que pegadinha fdp...
-
Não é uma questão impossível, mas precisa de conhecimentos sobre os caracteres curingas. Com prática e exercícios é possível conseguirmos matar.
arq*.txt (todos iniciados com arq)
arq?.txt (todos iniciados com arq + 1 caractere)
arq[134].txt (arq1.txt, arq3.txt, arq4.txt)
arq[13][24].txt (arq12.txt, arq14.txt, arq32.txt, arq34.txt)
arq[^25].txt (exclui arq2*.txt e arq5*.txt)
arq[1-3].txt (arq1.txt, arq2.txt, arq3.txt)
arq{[1-3],6}.txt (arq1.txt, arq2.txt, arq3.txt, arq6.txt)
arq.{doc,xls,txt} (arq.doc, arq.xls, arq.txt)
-
Gabarito C
Os comentários estão bem fartos. Vou apenas deixar um desafio que acho bem interessante pra quem quiser se testar um pouco mais com comandos Linux:
http://www.jofilho.pro.br/ieq/episodes/040/ieq040.pdf
-
O que adianta colocar questão fácil em informática? Todo mundo vai acertar.