Bash에서 선언을 사용하여 변수 세트를 설정 해제하는 방법

Bash에서 선언을 사용하여 변수 세트를 설정 해제하는 방법

다음이 있다고 가정해 보겠습니다.

foo=hello
declare -n bar=foo
echo $bar
# hello

시원한.

이제 명세서를 취소하고 싶습니다 bar.

unset bar
declare -p bar
# declare -n v="foo"
declare -p foo
# bash: declare: foo: not found

를 사용하여 생성된 변수를 설정 해제하는 방법은 무엇입니까 declare -n?

답변1

종종 그렇듯이 Stack Exchange는 훌륭한 고무 오리 작업을 수행했으며 해결책을 찾았습니다.

foo=hello
declare -n v=foo

unset -n v # <-- here's the magic

declare -p v
# bash: declare: v: not found
declare -p foo
# declare -- foo="hello"

관련 정보