You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Zsh包装器:如何为Shell命令参数添加路径前缀?

实现带路径前缀转换的Zsh包装脚本

直接给出满足需求的myCmd.sh脚本:

#!/usr/bin/env zsh

new_args=()
for arg in "$@"; do
    if [[ "$arg" == /* ]]; then
        new_args+=("/mnt/d$arg")
    else
        new_args+=("$arg")
    fi
done

Cmd "${new_args[@]}"

脚本说明:

  • 开头指定zsh解释器,避免环境差异导致的执行问题
  • 用new_args数组存储处理后的参数,保证带空格的参数不会被拆分出错
  • 遍历所有传入的参数,对以/开头的绝对路径自动添加/mnt/d前缀,其他参数原样保留
  • 最后调用目标命令Cmd并传递处理后的参数

额外提示:

  • 如果需要支持相对路径(比如./p1或p1/p2),可以把判断条件改成[[ "$arg" == */* ]],但要注意这种判断可能会误匹配类似a/b的非路径参数,根据实际需求调整即可
  • 确保Cmd命令在当前环境中能被找到,或者直接写它的绝对路径(比如/usr/local/bin/Cmd)

内容的提问来源于stack exchange,提问作者sun0727

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 03:31:05