Команда Unset в Linux не очищает переменную

Я пытаюсь сбросить переменную в Linux, но команда unset не работает.

[jisip@slc10xxx plsql]$ echo $PERL5LIB
/net/slcnasxxx.in.ecalor.com/export/xxx/bin
[jisip@slc10xxx plsql]$ unset PERL5LIB
[jisip@slc10xxx plsql]$ echo $PERL5LIB
/net/slcnasxxx.in.ecalor.com/export/xxx/bin

Есть идеи или альтернативы?


person Migs Isip    schedule 27.09.2020    source источник
comment
Вы делаете это в той же подоболочке? Опубликовать содержимое PROMPT_COMMAND.   -  person Arkadiusz Drabczyk    schedule 27.09.2020
comment
что, если вы сделаете это PERL5LIB=''или PERL5LIB=, это также очистит содержимое переменной! мой метод сработал для вас?   -  person Jatin Mehrotra    schedule 27.09.2020
comment
Не удалось воспроизвести это в bash. сброс работает нормально   -  person stark    schedule 28.09.2020


Ответы (1)


Я смог решить эту проблему, используя unsetenv вместо unset.

[jisip@slc10xxx plsql]$ unsetenv PERL5LIB
[jisip@slc10xxx plsql]$ echo $PERL5LIB                                                                                                                                                                   
PERL5LIB: Undefined variable.
[jisip@slc10xxx plsql]$ 

Надеюсь, это поможет!

person Migs Isip    schedule 28.09.2020
comment
Какую оболочку вы используете: csh, bash и т. д.? - person Timur Shtatland; 28.09.2020
comment
@TimurShtatland csh - person Migs Isip; 30.09.2020