0%

shell学习笔记

命令嵌套【嵌套语句通过 `` 来标记】

1
2
3
4
for list in \
`find /root/.jenkins/jobs/DEBUG-UZAO-*/ -maxdepth 1 -type f -name config.xml`\
;do sed -i s/$now_branch/$new_branch/g $list\
;done

shell的多行注释

1
2
3
4
:<<BLOCK
....注释内容
....注释内容1
BLOCK

实际意义:
::前的内容为空,表示执行空命令
<<:重定向,表示把结果重定向到空命令下
BLOAK\nBLOCKBLOCK只需要成对出现,两个BLOCK之间的内容就相当于是被注释掉了
但是如果需要注释的内容中包含 ` 的话的话就需要在前后字符对的中间加入'',把需要注释的内容放在''之间
以下方式都能表示多行注释:

1
2
3
4
:<<'
....注释内容
....注释内容1
'
1
2
3
4
:<<'BLOCK
....注释内容
....注释内容1
BLOCK'

shell 并发执行

1
2
3
4
5
6
7
8
9
10
date
for i in `seq 1 5`
do
{
sh newAccount.sh
sleep 3
} &
done
wait ##等待所有子后台进程结束
date

date打印当前时间
sh newAccount.sh表示执行newAccount.sh脚本,并发执行5次,即同时发起