2019-05-30

[root@m01 /server/scripts]# oldboy=I love you
-bash: love: command not found
[root@m01 /server/scripts]# echo $oldboy

[root@m01 /server/scripts]# oldboy='I love you'
[root@m01 /server/scripts]# echo $oldboy
I love you

[root@m01 /server/scripts]# env |grep OLDBOY
[root@m01 /server/scripts]# OLDBOY=oldboyedu.com
[root@m01 /server/scripts]# env |grep OLDBOY
[root@m01 /server/scripts]# echo OLDBOY oldboyedu.com [root@m01 /server/scripts]# export OLDBOY=lidaoav.com [root@m01 /server/scripts]# echoOLDBOY
lidaoav.com
[root@m01 /server/scripts]# env |grep OLDBOY
OLDBOY=lidaoav.com

局部变量VS全局变量

[root@m01 /server/scripts]# LIDAO=996
[root@m01 /server/scripts]#
[root@m01 /server/scripts]# echo $LIDAO
996
[root@m01 /server/scripts]# cat show.sh

!/bin/bash

echo $LIDAO

https://www.processon.com/view/link/5a0e4380e4b06c8e10923353
老男孩教育出品-export含义 局部与全局区别

awk中引用变量
[root@m01 /server/scripts]# x=10
[root@m01 /server/scripts]# y=99
[root@m01 /server/scripts]# awk 'BEGIN{print x/y}'
awk: cmd. line:1: fatal: division by zero attempted
[root@m01 /server/scripts]# awk 'BEGIN{print x,y}'

[root@m01 /server/scripts]# awk -vn1=10 -vn2=99 'BEGIN{print n1/n2}'
0.10101
[root@m01 /server/scripts]# awk -vn1=x -vn2=y 'BEGIN{print n1/n2}'
0.10101
awk
-v 命令行与awk桥梁

[root@m01 /server/scripts]# cat cal.sh

!/bin/bash

x=1 y=2

awk -vn1=x -vn2=y 'BEGIN{print n1/n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1*n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1-n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1+n2}'

[root@m01 /server/scripts]# sh cal.sh 1 3
0.333333
3
-2
4
[root@m01 /server/scripts]#

[root@m01 /server/scripts]# [ -d /tmp/oldboyabc ] && echo dir exist
[root@m01 /server/scripts]# [ -d /tmp/oldboyabc ] || mkdir -p /tmp/oldboyabc
[root@m01 /server/scripts]# ll -d /tmp/oldboyabc/
drwxr-xr-x 2 root root 6 May 30 10:37 /tmp/oldboyabc/

if [ 年薪1000000000w ];then
迎娶白富美
fi

如果 [ 年薪1000000000w ];然后
迎娶白富美
迎娶白富美
果如

!/bin/bash

x=1 y=2
if [ 参数个数不是2 ];then
echo "Usage: sh $0 num1 num2 "
fi

awk -vn1=x -vn2=y 'BEGIN{print n1/n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1*n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1-n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1+n2}'

[root@m01 /server/scripts]# cat cal-v2.sh

!/bin/bash

x=1 y=2
if [ # -ne 2 ];then echo "Usage: sh0 num1 num2 "
exit
fi

awk -vn1=x -vn2=y 'BEGIN{print n1/n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1*n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1-n2}'
awk -vn1=x -vn2=y 'BEGIN{print n1+n2}'

if [ guoav 是高富帅 ];then
迎娶傻白甜
else
抠脚大汉 caiav
fi

书写脚本comp.sh 比较两个数字的大小
a > b 显示 a > b
a 不> b 显示 a <= b

a b

<

[root@m01 /server/scripts]# cat comp.sh

!/bin/bash

a=1 b=2

if [ # -ne 2 ];then echo "Usage: sh0 num1 num2 "
exit
fi

if [ a -gtb ];then
echo "a great thanb"
else
echo "a less equalb"
fi

[root@m01 /server/scripts]# sh comp.sh 10 20
[root@m01 /server/scripts]# sh comp.sh 10 20
10 less equal 20
[root@m01 /server/scripts]# sh comp.sh 10
Usage: sh comp.sh num1 num2
[root@m01 /server/scripts]# sh comp.sh
Usage: sh comp.sh num1 num2

[root@m01 /server/scripts]# cat comp-multi.sh

!/bin/bash

a=1 b=2

if [ # -ne 2 ];then echo "Usage: sh0 num1 num2 "
exit
fi

if [ a -gtb ];then
echo "a >b"
elif [ a -ltb ];then
echo "a <b"
else
echo "a ==b"
fi

[root@m01 /server/scripts]#
[root@m01 /server/scripts]# sh comp-multi.sh 10 20
10 < 20
[root@m01 /server/scripts]# sh comp-multi.sh 20 1
20 > 1
[root@m01 /server/scripts]# sh comp-multi.sh 2 2
2 == 2

count=ps -ef |grep crond |wc -l

if [ 如果进程数等于 2 ];then
定时任务运行中
else
定时任务挂了
fi

[root@m01 /server/scripts]# cat check.sh

!/bin/bash

count=ps -ef |grep crond |grep -v grep |wc -l
if [ $count -eq 1 ];then
echo "crond is running"
else
echo "crond is guale"
fi

[root@m01 /server/scripts]# ps -ef |grep '[c]rond'
root 16542 1 0 12:04 ? 00:00:00 /usr/sbin/crond -n
执行进程名称是 ps -ef |grep '[c]rond'
进程运行 ps -ef |grep 'crond'
避免个过滤的时候 过滤grep命令自己

[root@m01 /server/scripts]# ps -ef |grep -c '[c]rond'
1

week01 带思远去找 girl01 大宝剑
week02 带思远去找 girl02 大宝剑
week03 带思远去找 girl03 大宝剑
week04 带思远去找 girl04 大宝剑
week05 带思远去找 girl05 大宝剑
week06 带思远去找 girl06 大宝剑
week07 带思远去找 girl07 大宝剑

for n in {01..7}
do
echo weekn 带思远去找 girln 大宝剑

done

总结:
1.变量 特殊变量 #* 10
2.判断与循环
服务脚本

批量添加用户设置随机密码 for循环实现
批量修改文件名字 for/rename
touch /oldboy/oldboy.txt 批量.txt修改为.jpg

ansible 剧本中 变量 条件 循环 剩下

研究:
read

[root@m01 /server/scripts]# source /etc/init.d/functions
[root@m01 /server/scripts]# action "crond is running" /bin/true
crond is running [ OK ]
[root@m01 /server/scripts]# action "crond is guale" /bin/false
crond is guale [FAILED]

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容