gpt4 book ai didi

zsh - 在交互式 shell 中关闭函数参数中的 ZSH glob 扩展

转载 作者:行者123 更新时间:2023-12-04 12:34:05 25 4
gpt4 key购买 nike

当我发现自己遇到算术问题时¹,我喜欢简单地在我的 shell 上计算

> echo $(( 3**4 - 2/7*5 ))
这当然很好用。但是,我发现打字太多了,所以我定义了
function §()
echo $(( $@ ))
这让我可以
> § '3**4 - 2/7*5'
但不是
> § 3**4 - 2/7*5
因为 zsh 告诉我它找不到匹配项(或者更糟的是,如果有匹配项,则扩展文件名)。
如何告诉 zsh shell 我希望它不将作为函数参数输入的内容解释为 globs?
我不想做类似的事情
> enter_non_glob_mode
> 3**4 - 2/7*5
> back_to_normal_mode
因为与其说是那样,我还不如开始 dc , python

¹欧拉妈妈对我说话,轻声细语,智慧之言,e... SCNR 的力量。

最佳答案

使用 noglob修饰符。

% noglob § 3**4 - 2/7*5
81
为了避免必须输入 noglob每次,使用别名插入修饰符。 (您不能将 noglob 放在函数内,因为在计算主体之前路径名扩展已经发生。)
% alias §='noglob §'
% § 3**4 - 2/7*5
81

关于zsh - 在交互式 shell 中关闭函数参数中的 ZSH glob 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66333032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com