linux day06 shell编程基础 变量使用,位置变量,逻辑运算 马

复习:

1,%s/xyz/&er/g 全部替换,只要匹配到的就替换

2,上次课的IP作业,后面不能用\1 ,\1表示前后得到的都是一样的

3,单词锚定的考验

4,[0-9]|[1-9][0-9] 或者[1-9]?[0-9]这两个其实是等价的

5,思考:正则表达式过滤手机号码,邮箱,QQ号码(4-11位),身份证号等等

shell编程基础

1,执行脚本的方式,为了不用每次执行脚本都要输入路径,我们只需要把脚本放入$变量对应的任意一个路径都可以

2,/root/bin 路径虽然$PATH会打印出来,但是默认并没有,需要手动创建一下,只要执行一次,就会hash到内存里面

3,hash -r就全部都清空了,hash -d hello.sh只删除一个

4,只要后缀是sh,自动生成脚本头,这个怎么做的呢?

脚本调试

1,检查脚本中的语法错误 bash -n /path/to/some_script。只能检查语法错误,其他查不了,非常有意义的

2,调试执行 bash -x /path/to/some_script,查看脚本的执行过程,有可能没有语法错误,只是逻辑错误,最后结果不是你想要的,会分别显示每一句的结果,调试的时候,命令的前面会有加号,两个加号表示命令是嵌套的,先内层后外层

3,脚本中某一行出了错误,是否还会往下执行,要分情况

4,语法错误的结果就是,默认不会继续执行下去,和前面的命令错误不会组织你继续往下执行,后面一种情况,危险性比较大

5,拿到一个脚本我们不是马上去执行,而是先去检查一下

6,即使测试成功,也不要马上去生产环境,先充分测试在去跑

7,接下来看一下,编程脚本中用到的非常普遍的技术,第一个变量

变量

1,系统带$ 符号的都是变量 USER HOOSTNAME PWD OLDPWD HISTSIZE PS1

2,引用变量一般必须加$符号

3,变量相当于存储内存的地址空间,存在内存里面

4,变量赋值和引用

5,之前的值还存在原来的地方,只不过以后会回收,加个标记这个空间可以用了,数据没有马上删除,好像一个文件

6,内容合一变,所以叫做变量

7,一个文件放入一个变量得话,格式变了,成为一行了,但是如果echo的时候,$NAME加上双引号,输出的就是标准格式了

8,一般变量不会放一篇文章的很少见

9,name3=$name1    修改name1原因就是里面存的是地址

猜你喜欢

转载自www.cnblogs.com/lisa-blog/p/10786354.html
今日推荐