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

如何通过一个Bash脚本修改同目录下另一Bash脚本的变量

第一步:修改Direx.sh(带循环的主脚本)

核心修改点是将for循环的步长调整为10,同时接收Direx_Opener.sh传递的参数,避免原脚本的循环调用问题:

#!/bin/bash
# 接收外部传入的START、END参数,对应位置变量$1和$2
START=$1
END=$2

# 此处保留你原来的其他脚本逻辑
# ...

# for循环步长设为10,固定写法为i+=10
for (( i=$START; i<=$END; i+=10 ))
do
    # 此处保留你原来的循环内逻辑
    # ...
done
wait
第二步:修改Direx_Opener.sh(控制START/END的调度脚本)

修正原脚本的变量赋值语法错误、逻辑颠倒问题,自动按10为间隔生成批次区间:

#!/bin/bash
# 初始化第一个批次的起止值
START=1
END=10
# 外层循环控制总批次,当前配置默认跑11个批次
for ((j=0; j<11; j++))
do 
    # 调用Direx.sh传入当前批次的起止参数
    ./Direx.sh $START $END
    # 生成下一批次的起止值,间隔10
    START=$(($START+10))
    END=$(($END+10))
done
使用说明
  • 两个脚本放在同一目录后,先执行命令赋予执行权限:chmod +x Direx.sh Direx_Opener.sh
  • 直接运行./Direx_Opener.sh即可自动按批次执行,主脚本循环步长固定为10
  • 如果需要调整总运行批次,修改Direx_Opener.sh外层循环的j<11参数即可,比如要跑20批次就改为j<20

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 23:15:00