No que se refere a Shell Script e a Java, julgue o item a se...
No que se refere a Shell Script e a Java, julgue o item a seguir.
A execução da linha de código apresentada a seguir, em Shell Script, resultará na troca de todas as ocorrências do verbete FORA pelo verbete CIMA no arquivo texto.txt.
sed -i 's\FORA\CIMA\g' texto.txt
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - certo
A questão pede para julgarmos a validade de um comando Shell Script que utiliza o utilitário sed, um editor de texto não interativo, para realizar substituições em um arquivo de texto. Para resolver essa questão, é fundamental entender o que o comando apresentado faz e conhecer a sintaxe do sed.
O comando sed -i 's/FORA/CIMA/g' texto.txt
tem os seguintes componentes:
- sed: é o nome do utilitário que está sendo utilizado;
- -i: essa opção é usada para editar o arquivo "in place", ou seja, o arquivo original será alterado com o resultado do comando;
- 's/FORA/CIMA/g': é o comando de substituição propriamente dito, onde:
- s: indica o início do comando de substituição;
- FORA: é a string que será buscada no arquivo;
- CIMA: é a string que substituirá cada ocorrência encontrada de "FORA";
- g: o modificador global que faz com que todas as ocorrências sejam substituídas, não apenas a primeira.
- texto.txt: é o arquivo de texto onde a substituição será realizada.
É importante notar que o comando de substituição está entre aspas simples para evitar que o shell interprete caracteres especiais de forma incorreta. Além disso, as barras (/
) são utilizadas como delimitadores entre os diferentes componentes do comando de substituição.
O comando está correto e irá realizar exatamente o que a questão descreve: substituir todas as ocorrências da palavra "FORA" pela palavra "CIMA" no arquivo texto.txt. Portanto, a assertiva é correta.
No estudo para concursos, é essencial ter uma compreensão prática dos comandos de shell e suas opções para resolver problemas de manipulação de texto e automação de rotinas, como aqueles envolvendo o sed. A habilidade de interpretar e construir comandos shell corretamente é muitas vezes testada em provas de concurso para vagas que incluem programação ou administração de sistemas.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Questão bastante específica. Fica a dica para quem ainda não tinha se familiarizado com os elementos dessa substituição.
sed: Vem de "stream editor", indicando que é frequentemente usado para aplicar edições a fluxos de texto.
-i:
Significa: "in-place".
O -i permite que o sed edite o arquivo diretamente, sem precisar criar um novo arquivo de saída.
's/FORA/CIMA/g': 's/[BUSCA]/[SUBSTITUTO]/G'
Padrão de Substituição:
s: Indica que estamos fazendo uma substituição.
/: Delimitador para separar os campos do padrão de substituição.
FORA: O padrão que estamos procurando.
/: Delimitador para separar o padrão de busca do padrão de substituição.
CIMA: O texto pelo qual queremos substituir o padrão de busca.
/: Outro delimitador.
g: Indica que a substituição deve ser global, ou seja, em todas as ocorrências de cada linha.
E o restante é o nome do arquivo.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo