如何取消设置鱼壳中的变量?

Posted

技术标签:

【中文标题】如何取消设置鱼壳中的变量?【英文标题】:How do I unset a variable in the fish shell? 【发布时间】:2015-08-22 14:34:54 【问题描述】:

在 bash 中,我可以使用

取消设置变量
unset myvar

在鱼我得到

fish: Unknown command 'unset'

鱼中未设置的等价物是什么。

【问题讨论】:

【参考方案1】:

Fish 使用 set 命令上的选项来操作 shell 变量。

使用-e--erase 选项取消设置变量。

set -e myvar 

另外你可以定义一个函数

function unset
  set --erase $argv
end

funcsave unset

或缩写

abbr --add unset 'set --erase'

~/.config/fish/config.fish中的别名

alias unset 'set --erase'

【讨论】:

请注意,该函数将无法擦除局部变量,因为它启动了一个新的变量范围。将--no-scope-shadowing 添加到函数定义以解决此问题。 添加了一个缩写方法和一个funcsave,所以unset 函数仍然存在。

以上是关于如何取消设置鱼壳中的变量?的主要内容,如果未能解决你的问题,请参考以下文章

用鱼壳修改 PATH [关闭]

取消设置 PHP 脚本中的所有变量

如何取消设置全局变量。

Linux中的取消设置命令不会清除变量

为啥不会/如何对 PHP 会话变量进行排序而不是取消设置

如何取消设置 jquery 变量的值?