Citando os documentos sobre o comportamento de um shell interativo :
- A opção de chamada
-n
é ignorada e 'set -n
' não tem efeito (consulte O conjunto criado ).
Como você criou o script a partir de um shell interativo, set -n
é ignorado.
este é o script de shell ..
#!/bin/bash
set -n
<<COMMENT1
tHIS IS A MULTILINE COMMENT MAN
COMMENT1
<<COMMENT1
THII
COMMENT1
:
echo "this is ashok"
echo "${LOGNAME}"
ao executar com sh e ./
está executando bem. mas quando eu executei com a fonte.
ashokkrishna@09:45:56:~/Desktop$ sh hello.sh
ashokkrishna@09:46:02:~/Desktop$ ./hello.sh
ashokkrishna@09:46:23:~/Desktop$ . hello.sh
this is ashok
ashokkrishna
porque a saída está chegando para o script quando eu executei com o comando source (.).
Citando os documentos sobre o comportamento de um shell interativo :
- A opção de chamada
-n
é ignorada e 'set -n
' não tem efeito (consulte O conjunto criado ).
Como você criou o script a partir de um shell interativo, set -n
é ignorado.