如何打印zsh参数的所有属性?

用户938271

我可以将-U属性提供给非关联数组,以便它不能包含重复的元素:

% declare -U path
% path=( ~/bin $path )
% path=( ~/bin $path )
% echo $path

在这里,即使我已两次添加~/bin到数组path,后者也只包含一个~/bin元素。

我正在寻找一种方法来打印可以在赋值期间给参数的所有属性,包括该-U属性。

我查看了中的typeset命令man zshbuiltins,并找到了以下摘录:

除非使用name = value进行赋值,否则使用+ m会强制打印匹配的参数及其属性,即使是在函数内部也是如此。

因此,我尝试执行以下命令:

% declare -U path
% declare +m 'path'

其输出是:

array path

虽然它告诉我参数的类型(这里是数组),但没有告诉我它具有-U属性。

是否有另一个命令可以打印参数的所有属性?

斯蒂芬·查泽拉斯(Stephane Chazelas)

您可以使用:

$ echo ${(t)path}
array-unique-special

我希望typeset -p path(或者declare我更喜欢,typeset因为它更便于携带)提供这些信息。但是在当前版本中却没有,对我来说似乎是个错误(编辑现在已修复)。

您还可以使用:

typeset -U +

unique属性列出变量

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何打印对象的所有属性

来自分类Dev

如何在ActionFilter中获取参数的所有属性?

来自分类Dev

如何在不显式命名属性的情况下打印对象的所有属性值

来自分类Dev

在zsh中打印以foo开头的所有变量

来自分类Dev

NodeJS和Express:如何打印在GET和POST请求中传递的所有参数

来自分类Dev

如何缩短这段代码以打印所有可能的组合(给定某些参数)

来自分类Dev

zsh:重用先前命令中的所有参数

来自分类Dev

动作中所有参数的BindRequired属性

来自分类Dev

如何替换所有参数?

来自分类Dev

序列化时如何自动忽略所有属性而没有相应的构造函数参数

来自分类Dev

如何打印所有来电者祖先

来自分类Dev

如何打印嵌套对象的所有值

来自分类Dev

如何让gcc打印所有链接的库?

来自分类Dev

比赛后如何打印所有内容?

来自分类Dev

如何打印字典的所有子集?

来自分类Dev

如何打印集合中的所有元素?

来自分类Dev

如何打印对象方法的所有值?

来自分类Dev

如何打印所有列的列表?

来自分类Dev

PostgreSQL +如何打印所有主机

来自分类Dev

如何打印表的所有元素(INT)

来自分类Dev

打印时如何启用所有禁用

来自分类Dev

如何使用AWK打印所有列

来自分类Dev

如何使Play打印所有错误

来自分类Dev

如何打印所有事实?

来自分类Dev

如何打印用户键入的所有行

来自分类Dev

如何打印datagrid的所有记录?

来自分类Dev

如何优雅地将类的所有属性作为函数中的参数传递?

来自分类Dev

tcsh:打印所有参数,先忽略,然后与grep匹配

来自分类Dev

JSF:通过EL打印所有请求参数