首先,我定义了一个变量count=10
并将其设为只读。现在,我该如何取消它?
其次,在取消设置变量时,它将其设置为NULL
字符串。我已经dir=/home/kundan
在取消设置目录上设置了现在,如果我这样做echo $dir
,输出为空,但如果我给cd $dir
它去/home/kundan
。
为什么会这样?
我预计在取消设置后dir
它不应该去/home/kundan
首先,我定义了一个变量count=10
并将其设为只读。现在,我该如何取消它?
其次,在取消设置变量时,它将其设置为NULL
字符串。我已经dir=/home/kundan
在取消设置目录上设置了现在,如果我这样做echo $dir
,输出为空,但如果我给cd $dir
它去/home/kundan
。
为什么会这样?
我预计在取消设置后dir
它不应该去/home/kundan
好吧,因为它是只读的,所以你不能真正取消它。如果你想要那样,你不应该把它设为只读。参见手册页。
Unset 按预期工作,因为它将@dir 设置为空。如果变量是只读变量,它将不起作用。
在 cd $dir 上,如果 $dir 为空或不存在。它将转到默认目录。即/home/用户名。
只需从不同的路径尝试 cd $abcd(其中 $abcd 未定义),因为 $abcd 未定义,它将以 /home/username 结尾