动态执行shell脚本
文章目录
- 一、linux动态执行指定脚本
- 二、需求思路分析
- ①我要做什么?
- ②先手动执行一遍流程
- ③ 把执行命令记录下来
- 三、动态执行脚本
- ①手动制作脚本
- ②脚本升级
- ③ 脚本截图
一、linux动态执行指定脚本
- 脚本目录 /app/CodeQualityScan/gblfy_cx/
- 脚本名 sonar-scanner.sh
- 用户gblfy_cx
二、需求思路分析
①我要做什么?
用户gblfy_cx进入/app/CodeQualityScan/gblfy_cx/脚本目录执行sonar-scanner.sh
②先手动执行一遍流程
执行步骤 | 说明 |
---|---|
① | 先用root用户登录 |
② | 切换用户到gblfy_cx |
③ | 到指定目录 |
④ | 执行指定脚本 |
⑤ | 查看日志 |
③ 把执行命令记录下来
把手动执行的每一条命令,都记录下来,剩下的就是怎样写一个脚本,让脚本依次执行我们的命令即可
步骤 | 需求 | 执行命令 |
---|---|---|
① | 切换用户到gblfy_cx | su - gblfy_cx |
② | 到指定目录 | cd /app/CodeQualityScan/gblfy_cx/ |
③ | 执行指定脚本 | ./sonar-scanner.sh |
三、动态执行脚本
①手动制作脚本
执行步骤 | 说明 | 执行命令 |
---|---|---|
① | 新建一个脚本DynamicStartSonarShell.sh | vim DynamicStartSonarShell.sh |
② | 给此文件赋予可执行权限gblfy_cx | chmod u+x DynamicStartSonarShell.sh |
③ | 执行指定脚本 | ./DynamicStartSonarShell.sh |
脚本内容:
#!/bin/bash
#su - $1 -s /bin/bash /app/CodeQualityScan/gblfy_cx/sonar-scanner.sh
su -gblfy_cx <<EOF
cd /bin/bash /app/CodeQualityScan/gblfy_cx/;
./sonar-scanner.sh
exit;
EOF
②脚本升级
#格式:sh 脚本名 用户用 目录
sh DynamicStartSonarShell.sh gblfy_cx /bin/bash /app/CodeQualityScan/gblfy_cx/
注:只有root才可以,root切换到任何一个用户不需要输入密码,但,其他用户切换root用户或者其他用户都需要密码
脚本内容:
#!/bin/bash
#su - $1 -s /bin/bash /app/CodeQualityScan/gblfy_cx/sonar-scanner.sh
su - $1 <<EOF
cd $2;
./sonar-scanner.sh
exit;
EOF
③ 脚本截图
动态执行shell脚本相关推荐
- linux 动态传参执行shell脚本
举个栗子: 我想执行的命令如下 /usr/bin/soffice --headless --invisible --convert-to pdf 3.doc 但是这样命令就写死了,如何动态传参数,执行 ...
- python调用shell脚本的参数_使用python执行shell脚本 并动态传参 及subprocess的使用详解
最近工作需求中 有遇到这个情况 在web端获取配置文件内容 及 往shell 脚本中动态传入参数 执行shell脚本这个有多种方法 最后还是选择了subprocess这个python标准库 subpr ...
- Linux中执行shell脚本的4种方法
这篇文章主要介绍了Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法,需要的朋友可以参考下. bash shell 脚本的方法有多种,现在作个小结.假设我们编写 ...
- Linux下如何执行Shell脚本
Linux下如何执行Shell脚本 Linux下你可以有两种方式执行Shell脚本: 1.用shell程序执行脚本:根据你的shell脚本的类型,选择shell程序,常用的有sh,bash,tcsh等 ...
- 运维经验分享(六)-- 深究crontab不能正确执行Shell脚本的问题(二)
运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell ...
- Jenkins执行shell脚本启动tomcat失败解决方法
Jenkins执行shell脚本启动tomcat失败解决方法 参考文章: (1)Jenkins执行shell脚本启动tomcat失败解决方法 (2)https://www.cnblogs.com/wa ...
- 执行Shell脚本的4种方法
假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/root/bin目录中并已有执行权限(添加权限的方法:chmod +x hello.sh). 1.方法一:切换到shell脚本所在 ...
- ssh远程登录执行shell脚本,找不到jps
直接运行jps命令正常,但是通过ssh远程登录后,执行shell脚本不能进行jps. 原因是有可能你的jps不在PATH中. 要注意bash在交互模式和非交互模式读取的配置文件是不同的,为了解决这种差 ...
- Swift 使用WebKit动态执行javascript脚本
Swift 使用WebKit动态执行javascript脚本 由于苹果取消UIWebView的控件使用.在IOS12 改用WebKit,需要导入头文件.swift里面需要引入相关依赖.苹果推荐我们使用 ...
最新文章
- Spring-Security-入门(一):登录与退出
- C++二维数组按行遍历和按列遍历的区别
- linux监控哪些目录,linux管理文件和目录的命令
- 京东云Ubuntu下安装mysql
- layui 自定义request_layui中使用自定义数据格式对数据表格进行渲染
- java实现中缀表达式转后缀表达式
- 蓝桥杯---等差数列(C语言)
- ORB-SLAM3 一张图梳理mono_kitti.cc主流程
- ns.ajax,UIWebView使用NSURLProtocol(拦截),ajax加载失败的问题
- 常用的字符编码:ASCII、Unicode、UTF-8
- 2021年2月3日 星期三 农历立春 霾 天津
- 经济学人The Economist学习(笔记词汇)Day1
- ipad怎么分屏方法
- MybatisPlus相关
- el-upload 模拟点击
- DAC8568 Controller
- Redis3.0的主从、集群高可用
- AI遮天传 DL-回归与分类
- P3625 [APIO2009]采油区域(前缀和)
- Windows系统环境变量之path环境变量(Python, Java环境变量配置)