C语言第十八章:shell脚本
Posted 歌咏^0^
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言第十八章:shell脚本相关的知识,希望对你有一定的参考价值。
一、case
----类似C语言switch
格式:
比如
二、循环
1、for循环
格式
比如:
执行结果:
执行结果:
=====》for也可以写成 C风格的for循环
注意: for里面一定 要使用 双圆括号
2、while循环
格式:
比如:
执行效果:
====》也可以用类似C语言的 while风格
练习1:假设有一个文件 test.txt ,内容为10,要求写一个脚本,判断文件的内容
内容是10,打印 large
内容是5,打印middle
内容是1,打印small
其他值,打印other
使用case 语句
练习4:写一个脚本,可以实现不断地从键盘获取数据
如果获取的数据为 "exit",则退出 --循环退出 使用 break
如果获取的数据小于100,则打印该值
如果获取的数据时其他的,则打印 other
三、如何去调试shell编程 脚本文件
1、打印调试语句 ,确认程序 是执行在哪一块 代码
echo "1111222"
2、如何去验证 到底是哪一行代码出现问题呢
一行一行地去屏蔽代码
错误:
1)、赋值的时候等号左右两边有空格 -----》不能有空格
2)、[ $i -le 100 ] 左右两边 没有空格 ---》[ ] 里面要有空格
3)、for( ( ) ) ---->for(( ))
4)、if $val = "exit"
四、函数
格式:
function_name:函数的命名 规则跟C语言类似
函数的调用:
在函数的内部如何 使用 传递进去的参数:
arg1 ===》 $1
arg2 ===> $2
arg3 ===> $3
如何获取返回值
$?
注意:
1、函数的返回值的大小不能超过一个字节
2、SHELL没有变量作用域,如果出现重复变量名会认为同一个(也就是不区分局部变量和全局变量)
比如:
练习1: 编写一个脚本,封装一个函数实现比较两个数的最大值 并返回 打印出来
五、正则表达式
字符串是计算机应用中最广泛的处理对象之一(网页、文档),并且字符串组合规则形式多样,比如
数字字符串 123456
C语言标识符 “hello”
IP地址字符串 192.168.11.44
。。。。
上面这些都是我们程序设计需要处理的对象,现在的问题是:计算机要处理这些字符串,首先需要某种语言去描述符这些字符串的规则
===>正则表达式,它就是描述某一个特定规则的表达式
正则表达式 的字符组成
正则表达式是由一些字符去描述规则,在正则表达式中有两类字符
1、元字符:不代表自己,代表某个特定的字符 或者多个字符
2、普通字符:仅代表自身的字符 \\元字符 -->普通字符
正则表达式 有不同的流派(java c# py ),不同的语言都用到了正则表达式,但是这些语言用来描述字符串规则 不是都一样,我们称为 正则表达式有不同的流派。
所谓的匹配指的是 通过 正则表达式 找到 符合条件的字符串
练习正则表达式的网站: http://c.runoob.com/front-end/854
练习:用正则表达式 描述 ipv4的地址
192.168.11.44 192.168.111.44 192.118.111.44
答案:(\\d{1,3}\\.){3}\\d{1,3}
以上是关于C语言第十八章:shell脚本的主要内容,如果未能解决你的问题,请参考以下文章