首页 > 系统相关 >xxl_job系列---【GLUE(shell)模式如何传多个参数,并被shell接收】

xxl_job系列---【GLUE(shell)模式如何传多个参数,并被shell接收】

时间:2024-02-21 09:56:56浏览次数:30  
标签:shell IFS echo --- job 参数 GLUE

1.场景

我需要传入多个参数,在执行任务时传入的任务参数用逗号隔开,到shell中都被$1当做字符串接收到了,没办法,只能在shell中截取字符串,截成多个参数。

2.编辑入参

点击“任务管理”->“操作”->“编辑”->“任务参数”:afp,date +%Y%m,zhangsan

3.编辑shell脚本

点击“任务管理”->“操作”->“GLUE IDE”

#!/bin/bash
echo "xxl-job: hello shell"

echo "脚本位置:$0"
echo "任务参数:$1"
echo "分片序号:$2"
echo "分片总数:$3"

#关键代码---开始
PARAMS_STR=$1
OLD_IFS=$IFS
IFS=','
read -ra params <<< "$PARAMS_STR"
IFS=$OLD_IFS
PARAM1=${params[0]}
PARAM2=${params[1]}
PARAM3=${params[2]}

INDEX_NAME=${PARAM1}`${PARAM2}`
#INDEX_NAME的最终值为:afp_202402
echo "index_name is $INDEX_NAME"
#关键代码---结束

echo "Good Bye!"
exit 0

标签:shell,IFS,echo,---,job,参数,GLUE
From: https://www.cnblogs.com/hujunwei/p/18024518

相关文章

  • OAF:开发环境配置--异常处理
      测试提示信息:Unabletoopenfile"D:\Jdeveloper\jdevhome\jdev\myprojects\oracle\apps\fnd\framework\toolbox\attributes\FwkTbxAddresses.xml".ThedocumentisnotintheXMLPath"D:\Jdeveloper\jdevbin\myprojects;D:\jdeveloper\jd......
  • Git第十三阶段:Rebase -> 调整commit 顺序
     一、缘起:我有一些修改涉及到旧的commit,我想把这种同类的修改放在一起,这就需要我把原来的commit放在"TOP"的位置。图示:这是我原来的commit:C1-C2-C_TARGET-C3-C4我想将它变成:C1-C2-C3-C4-C_TARGET二、进入我的测试gitrepo,我将生成三个测试commit,然后用gitrebase来调......
  • Invicti Enterprise v24.1.0 for Windows - 企业应用安全测试
    InvictiEnterprisev24.1.0forWindows-企业应用安全测试InvictiEnterpriseOn-Premises09Jan2024v24.1.0请访问原文链接:InvictiEnterprisev24.1.0forWindows-企业应用安全测试,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgInvicti是一种自动化但......
  • SonarQube 10.4 (macOS, Linux, Windows) - 清洁代码 (Clean Code)
    SonarQube10.4(macOS,Linux,Windows)-清洁代码(CleanCode)SonarQubeDataCenterEdition(JavaAppformacOS,Linux,Windows)请访问原文链接:SonarQube10.4(macOS,Linux,Windows)-清洁代码(CleanCode),查看最新版。原创作品,转载请保留出处。作者主页:sysin.or......
  • Studio 3T 2024.1 (macOS, Linux, Windows) - MongoDB 的专业 GUI、IDE 和 客户端,支持
    Studio3T2024.1(macOS,Linux,Windows)-MongoDB的专业GUI、IDE和客户端,支持自然语言查询TheprofessionalGUI,IDEandclientforMongoDB请访问原文链接:Studio3T2024.1(macOS,Linux,Windows)-MongoDB的专业GUI、IDE和客户端,支持自然语言查询,查看最新版......
  • Go 100 mistakes - #35: Using defer inside a loop
    Wewillimplementafunctionthatopensasetoffileswherethefilepathsare receivedviaachannel.Hence,wehavetoiterateoverthischannel,openthefiles,and handletheclosure.Here’sourfirstversion:Thereisasignificantproblemwithth......
  • Linux:系统性能监控工具-tsar安装和使用
    前言做性能验证往往需要去监控系统的各项性能指标,Linux系统监控工具有很多,但对于命令行操作,安装便捷,监控项较全面等方面,个人比较推荐tsartsar介绍TSAR(TaobaoSystemActivityReporter))是淘宝自己开发的采集工具。主要用来收集服务器的系统信息(如cpu,io,mem,tcp等),以及应用数据......
  • 大年学习linux(第五节---目录结构)
    五、目录结构可以用ls/查看linux的目录结构bindataetclibmediaoptrootsbinsysusrbootdevhomelib64mntprocrunsrvtmpvar以下是对这些目录的解释:/bin:bin是Binaries(二进制文件)的缩写,这个目录存放着最经常使用的命令......
  • Go - break
    Abreakstatementiscommonlyusedtoterminatetheexecutionofaloop.When loopsareusedinconjunctionwithswitchorselect,developersfrequentlymakethe mistakeofbreakingthewrongstatement.Let’stakealookatthefollowingexample.Weimplem......
  • 大年学习linux(第六节---软件安装)
    六、软件安装rpmRPM软件包的管理工具补充说明rpm命令是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了......