Linux学习笔记之:学习Shell Script

(格式约定:标题2,标题3 命令或终端显示 文件名或文件关键内容

1 开始

1.1 输入和输出

        1,使用-e参数在echo中显示\n
        2,用 chmod u+x aaa.sh命令改变.sh权限,可以直接用文件名执行


1.2 变量的测试


        使用 ${MSG:-"guten tag"}命令来测试变量MSG是否为空或者未设置,如果为空或者位设置,则设置为"guten tag"
        使用 ${MSG-"guten tag"}命令来测试变量MSG是否未设置,如果未设置,则设置为"guten tag"
        更多在在鸟哥的Linux私房菜315页
        

1.3 算数运算

        使用$(( ))来进行算数运算
        

1.4 使用$()获得其他命令返回

        
        上例中,使用了 $(date)命令获得了今天的日期

2 逻辑

2.1 使用test命令来测试

        测试案例如下
        
        上述测试例子中,首先测试 /dev/fb是否存在,然后判断 /dev/fb是字符型设备还是块类型设备,经过测试, /dev/fb是字符型设备, 略毁三观

2.2 使用while [ ] 实现循环

        例子如下
        
        执行结果如下
        
        上例中有如下要点
        1,使用了while循环
        2,使用了 while [ 1 -eq 1 ]实现C语言中的while(1)的功能
        3,使用了 date命令来判断输入日期是否正确(但是这样可能没有移植性,测试版本 centos 6.4 kernel:2.6.32.65)
        4,使用了 /dev/null文件来湮没掉垃圾输出

2.3 使用if实现判断

        测试例子如下
        
        本例中使用了正则表达式=~

2.4 使用case进行选择

        示例代码如下
        
        运行结果如下
        

2.5 使用for 进行数组遍历

        例子如下
        
        上述例子先定义了一个数组,然后循环ping之并获得结果,其运行结果如下:
        
        问题:1,google上不去但是给出了能ping的结果(后来发现确实能ping通。。。但是确实上不去) 2, 无法ctrl+c结束程序
        

2.6 使用函数

        还是2.5中的案例,代码如下
        
        这个例子中,把实现的ping功能放到了函数里 (仅仅是为了测试函数而已)
        注意:1,shell中的函数的返回值的两种方法 (1)echo,然后用$()获得结果 (2)全局变量
        测试的结果跟2.5中的一样

2.7 综合例子

        这个示例仿照系统自带的seq命令,不过对象是字母
        
        
        
        测试结果
        
        在这个例子中,函数、正则表达式、格式化输入输出、流程控制等都得到了应用。
        以上,Shell Script这一章暂时告一段落。
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值