linux循环三次怎么写,Shell 循环执行3次命令

2019独角兽企业重金招聘Python工程师标准>>>

6936d1565ae689371725cdb5fc51c415.png

#!/bin/bash

for i in 1 2 3; do

echo 'Execute 3 times'

echo $i

pybot --nostatusrc --outputdir /root/.jenkins/workspace/User/report/ --include usertest /root/.jenkins/workspace/User-200

sleep 5s

done

1.shell格式:例

shell脚本开发习惯

1.指定解释器 #!/bin/bash

2.脚本开头加版权等信息如:#DATE:时间,#author(作者)#mail:邮箱,#function(功能),#Version:版本

3.脚本注释(用英文注释 中文可能乱码。)

4.脚本以.sh结尾 不是必须的

5.成对的符号,一次性写全,退格补内容。特殊符号[ xxxx ] 中括号中间内容两边都有空格。

6 .代码有条理性(通过缩进)。

2.执行:1.sh xxx.sh (-x)执行并显示执行过程。

sh xx.sh(不需要root权限)。全路径执行需要x权限。(chmod a+x xx.sh)当前路径下用点执行(. xx.sh )或者source  xxx.sh (重点)

注意:两个 脚本 ,当一个脚本需要调用前一个脚本里面的内容时候 。需要source  或者点 “.” 来执行加载才可调用。Sh .xxsh  bash  xxx 只可执行 不可加载。

学习在线资料:http://manual.51yip.com/shell/

https://www.cnblogs.com/wylhome/p/6059840.html

3.环境变量全局配置地点:常见的:/etc/profile , /etc/basrc , /etc/profile.d/xxx.sh ,

用户的环境变量~/.bash_profile  ~./bash_bashrc

设置环境变量用:export 变量名(大写)=xxx变量值。

如登录时候提示信息可在vi /etc/motd 编辑改文件自定义提示信息。也可在/profile.d/xx.sh 内如可写echo “xxx自定义提示信息”。即可加入x执行权限。注意:定时任务。环境变量需要重新定义。

(1). 显示环境变量输出: echo $XXX , set ,env 显示比较全面。

(2)取消变量 unset 命令行临时取消。

(3)jobs 将查当前后台执行程序。

(4) ctrl+z 暂停, fg 调至前台运行,bg将程序调至后台执行。

(5)清空日志:cat /dev/null >test.log   unll

4.shell特殊符号总结

‘’单引号 照原输出。

“” 自动识别变量执行,遇到命令需要加反引号。=不加引号(设置变量里面)

.*表示任意字符

.  表示任意一个字符。

*  表示任意0个或多个字符。(包括+和?)

+ 表示1个或多个+前面的字符

? 表示0个或1个字符。

#  注释符号。#后面的内容可以忽略

\ 脱意字符。

| 管道符号 将符号前面执行的结果作为符号后面的命令。如cat test.txt |wc -l 计算文档行数。

$变量前面表示符号。还有一个妙用即和!结合起来使用。!$ 表示上一条命令中最后一个变量 如:上一次touch 1.txt 。Vi !$ 其中!$表示为1.txt、

~表示root家目录。

& 如果把一条命令放到后台执行的话,则需要加上这个符号, 通常用作一个命令运作时间非常长的情况。如。Sleep  200 & 后台执行。Jobs 查看 bg 调用到前天 fg调用到后台。

>>追加重定向。   >(重定向)   2>>错误追加重定向。2>重定向。

<  如:wc -l <1.txt

[  ]  中括号 中间字符组合,代表中间字符中的任意一个。Ls [1-3].txt

{ } 表示序列 序列 如:touch wyl{1..3}.txt 也有表示变量的意义如:  Echo “${a}abc” 告诉它a是变量。

^以什么开头。

$以什么结尾。

^$表示空行。

&&  左边命令执行成功后,在执行下一个命令

||  左边的命令没有执行成功后,才会执行后面的命令。

;常常把两条命令写在一行中间用;隔开。有或的意思。如:command1:command2

#!/bin/bash

IMG_NAME=$(echo ${gitlabSourceRepoHttpUrl} | grep -Eo "[^/]*$" | sed 's/.git$//')

IMG_NAME_LOWER=$(echo $IMG_NAME | tr "A-Z" "a-z")

git clone ${gitlabSourceRepoHttpUrl}

cd ${IMG_NAME}

#git checkout -b ${gitlabSourceBranch}

CID=$(git rev-parse HEAD)

SHORT_CID=$(echo $CID | cut -c 1-8)

TIMESTAMP=$(date +%Y%m%d%H%M%S)

IMG_TAG=${TIMESTAMP}-${SHORT_CID}

#build

mvn clean package -DskipTests

#build docker image

docker build -t 192.168.1.202/dev/${IMG_NAME_LOWER}:${IMG_TAG} .

#push to harbor/test...

docker login 192.168.1.202 --username admin --password Harbor12345

docker tag 192.168.1.202/dev/${IMG_NAME_LOWER}:${IMG_TAG} 192.168.1.202/dev/${IMG_NAME_LOWER}:latest

docker push 192.168.1.202/dev/${IMG_NAME_LOWER}:${IMG_TAG}

docker push 192.168.1.202/dev/${IMG_NAME_LOWER}:latest

/usr/local/bin/docker-starter dev ${IMG_NAME_LOWER} ${IMG_TAG}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值