我想知道如何清除我在命令提示符下定义的所有变量而不关闭终端吗?
例如,如果我在命令提示符下将变量设置为:
$ a=1
现在,我想删除变量$a
(以及许多其他以类似方式定义的变量)而不关闭终端。我可以使用,unset
但是如果没有大的话,那将会很忙。变量
你为什么要这么做?
—
Hauke Laging 2014年
@HaukeLaging我正在使用脚本处理数组。有时我会添加一个元素。因此,我无法使用旧值运行脚本(因为更改了数组)。我必须关闭终端并再次开始新的会话。我希望我说清楚了。如果没有,请告诉我:)
—
爱德华·托瓦尔兹
@muru-他将列表保存到
—
mikeserv 2014年
$var
with中,var=$(declare -p +F);
然后将其作为参数传递给一个函数,该函数的echo "${2%%=*}".
大小确实有一些问题-但如果您的环境不是很大,它应该可以工作。
我不知道你想做什么。您是在谈论交互式外壳程序还是脚本?从交互式外壳执行的脚本中设置的变量不会影响父外壳。告诉我们您想要实现的目标,而不是您追求的目标。
—
吉尔斯(Gillles)“所以-别再作恶了”
exec "$0"
也许-但是很难告诉你全球意味着什么。