набор-n не работающий в сценарии оболочки при выполнении с источником

это - сценарий оболочки..

#!/bin/bash
set -n
<<COMMENT1
    tHIS IS A MULTILINE COMMENT MAN 

COMMENT1
<<COMMENT1
THII
COMMENT1
:
echo "this is ashok"
echo "${LOGNAME}"

при выполнении с sh и ./ его прекрасное выполнение. но когда я выполнился с источником.

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

почему вывод прибывает для сценария, когда я выполнился с исходной (.) командой.

1
задан 17 June 2015 в 09:24

1 ответ

Заключение в кавычки документы на поведении интерактивный оболочка:

  1. -n опция вызова проигнорирована, и †˜ set -n, ’ не имеет никакого эффекта (см. Набор, Встроенный ).

, Так как Вы получили сценарий от интерактивной оболочки, set -n, проигнорирован.

1
ответ дан 11 November 2019 в 02:15

Другие вопросы по тегам:

Похожие вопросы: