提问人:TimSO 提问时间:10/26/2023 更新时间:11/8/2023 访问量:38
如何在ZSH中使用函数参数作为字符串的一部分?
How to use function argument as a part of a string in ZSH?
问:
我有带有参数的 ZSH 函数 test() { echo $1ext; } 调用如下: 测试参数
如果函数中的 $1 是字符串的一部分,则 $1ext 不起作用(适用于 $1-ext 或 $1.ext)。 有没有办法这样使用:$1ext? (在回声的不恰当解释中,我可以使用&&,但这不是真正的回声,而是更大功能的参数。
答:
0赞
TimSO
11/8/2023
#1
解决方案是将ext附加到参数:如何附加到已经存在的字符串?
ZSH 将 $101 视为参数编号 101。同样,$abc 正在扩展名为 abc 的参数,而 ${ab}c 将扩展参数 ab,并在其中添加字母 c。
注意:我之前添加了一个答案,但不知何故它被更改为我的第一条评论。感谢那些也发表评论的人。
评论
printf "%sext\n" "$1"
或者也许print -r -- "${1}ext"
zsh
$1ext
${1}ext
$101
$abc
abc
${ab}c
ab
c