网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
01月03日漏签0天
linux吧 关注:534,562贴子:2,573,636
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 19回复贴,共1页
<<返回linux吧
>0< 加载中...

【求助帖】shell脚本如何给第三方命令行传参?

  • 只看楼主
  • 收藏

  • 回复
  • 桔梗之艳
  • ----x-wx
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
最近碰到一个新的shell脚本的问题,实在没思路,特来请教各位大神!
问题说明:
1、写了一个shell脚本,需要调用一个供应商提供的应用程序cli,cli也是命令行的形式,在shell下执行的效果就是./cli,程序进入到cli 的命令行,这时只能支持cli实现的几个命令;
如:
# ./test.sh
test.sh的内容如下:
xxxx = "test"
./cli (启动应用程序)
cli > cli.get xxxx(xxxx是需要在输入cli的命令,如何传进去)
cli > xxxx 500
cli > exit
#
2、shell脚本要传入cli需要执行的参数,然后再将cli命令的结果获取到;
执行的效果大概是这样的:
# ./test.sh
cli > cli.get xxxx
cli > exit


  • ebhrz
  • ----xr--
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
似乎不行 除非cli支持在shell下cli -run 'xxxxx'这种非交互式模式才有可能 我上次需要一个sql操作(和你这个需求差不多) 最后是用bash生成的.sql文件再由mysql来执行


2026-01-03 06:01:35
广告
不感兴趣
开通SVIP免广告
  • 大雨白浪
  • ----x-wx
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
用 expect


  • _柒月初七
  • ----x-wx
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
cli <<EOF
cli.get xxxxx
xxxx 500
EOF


  • _柒月初七
  • ----x-wx
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
也可以用here string
cli <<< "
cli.get xxxx
xxxx 500
"


  • _柒月初七
  • ----x-wx
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
result="$(cli << .....)"
这样就能保存结果了


  • _柒月初七
  • ----x-wx
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
while read line;do
echo "输出: $line"
done <<< "$(cli <<....)"
这样是把输出的每行都读取出来,每行存在line变量中


  • 暴走的蜗牛时代
  • -------x
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
楼主,请问你那个是怎么把输出保存到result 变量里面的呢


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 19回复贴,共1页
<<返回linux吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示