linux基础语言的用法,Linux基础学习八

一:exit

1.exit  数字(退出状态码):退出脚本

文件测试:

-e  file:测试文件是否存在

-f  file:测试文件是否为普通文件

-d  file:测试指定目录是否为目录

-r|-w|-x  file:测试当前用户对指定文件是否有读写执行权限

例:[-e  /etc/initab]

2.多分支的if语句

if  条件1;then

......

elif  条件2;then

......

else

......

fi

3.测试脚本是否有语法错误

bash  -n  脚本

bash  -x  脚本:单步执行

二:bash变量的类型

1.特殊变量:

$?:上一条命令的退出状态码

$#:参数的个数

$*:参数列表

$@:参数列表

2.sed(流编辑器):默认不编辑源文件,仅对模式空间中的数据做处理,将模式空间打印至屏幕

用法:sed  [选项]  ‘AddressCommand’  file,...

(1)Address:

<1>startLine,EndLine   比如:1,100

$:最后一行

<2>/模式(正则表达式)/    比如:/^root/

<3>/模式1/,/模式2/:第一次被模式1匹配到的行开始,至第一次被模式2匹配的行结束,这中间所有的行

<4>lineNumber:指定的行

<5>startline,+N:从startline开始,向后N行

(2)Command:

d:删除符合条件的行

p:显示符合条件的行

a  \"string":在指定的行后面追加新行,内容为string

i  \string:在指定的行前面添加新行,内容为string

r  file:将指定的文件的内容添加至符合条件的行处

w  file:将指定范围内的内容另存至指定的文件中

s/模式/string/修饰符:查找并替换,默认只替换每行中第一次被模式匹配到的字符串

修饰符:

g:全局替换

i:忽略字符大小写

&:引用模式匹配整个串

(3)选项

-n:静默模式,不再默认显示模式或空间中的内容

-i:直接修改源文件

-e:script  -e  script:可以同时执行多个脚本

-f  文件:通过将AddressCommand写到文件中去执行

-r:使用扩展正则表达式

三:实例

1.删除某文件中开头的#号及后面的空白字符

sed  -r  's@^#[[:space:]]+@@g'  ./sed_test.txt

2.删除某文件中以空白字符后面跟#的行中的开头的空白字符及#

sed  -r  's@^[[:space:]]+#@@g'  ./sed_test.txt

3.取出一个文件路径的目录名称

echo  "/etc/rc.d/"  | sed -r  's#^(1.*/)[^/]+/?#\1#g'

四:字符测试

==:测试是否相等

!=:测试是否不等

>:大于

-n  string:测试指定字符串是否为空,空则真

五:for循环

for  变量  in  列表;do

循环体

done

如何生成列表:

1.{1..100}

`seq  [起始数]  [步长]  结束数`

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值