Na verdade, há uma explicação maravilhosa sobre por que !
é usado em aqui . Para entender o comando com mais clareza, fiz os seguintes comandos.
pwd- It gives the present working directory.
!pwd - It executes the previously executed pwd command.
Essa configuração pode ser perigosa, pois há chances de que um usuário execute !rm
por engano e, assim, resulte em resultados sem precedentes.
Outro método para testar a eficácia do caractere !
seria
echo "12345647" >> ramesh.txt
cat ramesh.txt
12345647
!echo
cat ramesh.txt
12345647
12345647
Como podemos ver, o comando !echo
foi executado e anexou a linha 1234567 ao arquivo.
Embora não seja aconselhável usar os caracteres especiais como separadores de arquivos ou separadores de registros no script, essa configuração pode ser anulada, executando o comando abaixo.
set -H turns it on;
set +H turns it off.