繁体   English   中英

如何将自定义的 zsh 函数参数传递给块内 zmv 命令?

[英]how to pass customized zsh function argument to in-block zmv commands?

我正在创建一个 zsh 脚本,用于批量调整、转换和重命名 Web 开发的图像集。

zsh 函数的结构如下:

function img() {
    # lines of "magick -resize" and "magick mogrify -format"

    autoload zmv
    zmv '(*).(*)' '$1.$2'
}

我怎样才能从命令中传递一个参数,比如img "something"所以 zmv in-function 命令可以是:

zmv '(*).(*)' 'something$1.$2'

谢谢!

这将为zmv的第二个参数加上传递给img的第一个参数的前缀:

img() {
  zmv '(*).(*)' $1'$1.$2'
}

这是有效的,因为第一个$1没有被引用,因此在传递给zmv之前进行了评估,而'$1.$2'是在单引号中,因此作为文字字符串传递。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM