Article09 浅谈shell脚本编程基础及思维导图、实战

思维导图百度云分享:链接:https://pan.baidu.com/s/1UMvudlv-xEG_pFtOPdCWhg 密码:x6oa

PATH:
    外部命令脚本执行需在path下,cp到path某个路径下或将外部命令路径加到path里在其他任何地方均可运行;或绝对路径相对路径都可以;
    /etc/profile.d/xxx.sh加当前路径到PATH;./etc/profile.c/xxx.sh立即生效;之后再其他路径下都可以直接执行,前提要有该脚本。不利于安全。
    shell脚本加注释#;脚本建完加权限,写路径(放PATH变量/绝对路径/);
    ./source+x.sh影响当前进程;
变量:
    普通变量:当前进程有效;
    环境变量:可以传给子进程;export+赋值;
    位置变量:$1、$2...
    只读变量:PS1...
    特殊变量:$# $*..
    (());$[];$();
test: 
    []不能用正则表达式,字符用引号引用,比较数值和字符组等;数字-eq -qt等;
    [[]]用于正则表达式,表达字符串的时候不能用双引号引用,用户复杂判断;=~正则包含,==精确匹配,注意通配符和符号以及在正      则在定量区别中的引用;
    但是变量都要加,unset可举例;
    test指向性; -L/h和 -d,先判断文件是不是软链接,rwx看实际权限;
组合测试:
    1.CMD1 &&/|| CMD2;!CMD
    2.EXP1 -a/o EXP2;!EXP
    touch /etc/nologin 禁止普通用户登录
read:
    内置命令;输入模式;可以多个赋值,但最好1对1;前面带上提示(please...);
    -p显示紧跟描述信息;-s静默;-n 数字 指定长度;-d 指定结束符;-t 秒 限制登录时长;
脚本中别名无效,不能调用;
curl实现远程调用脚本;
eq(equal)=;le(less)<;gt(greater)>

实战题:

1、

     

2、

3、

4、

判断centos版本:

判断用户账号的存在性实验:

判断ip能否ping通实验:

yes or no选择实验:

鸡兔同笼实验:

猜你喜欢

转载自blog.csdn.net/qq_42736877/article/details/81750503