目录 1.什么是变量的测试与内容置换 2.变量的测试与内容置换 3.示例 例1: 例2: 例3: 1.什么是变量的测试与内容置换 我们之前说过,在Shell中,一个变量未定义,和一个变量为空值的输出效果是一样的. # 先直接输出一个未定义的变量y [root@Lyl ~]# echo $y # 再定义变量y为空值,并输出变量y [root@Lyl ~]# y="" [root@Lyl ~]# echo $y [root@Lyl ~]# 其结果都是没有任何显示. 前边在说set命令的时候…
提示:本篇文章接上一篇文章,主要说说()小括号和{}大括号的区别与使用. 8.()小括号 ():用于一串命令执行时,()中的命令会在子Shell中运行.(和下面大括号一起说明) 9.{}大括号 {}:用于一串命令执行时,{}中的命令会在当前Shell中执行.也可以用于变量变形与替换. (1)父Shell和子Shell 在介绍小括号和大括号的区别之前,我们先要解释一个概念,那就是父Shell和子Shell. 用户登录到Linux系统后,系统将启动一个用户Shell.在这个Shell中,可以使用Sh…
目录 1.位置参数变量$n 2.位置参数变量$*和$@ 3.位置参数变量$# 位置參数变量的作用主要用于脚本的传参. 位置參数变量的名称和作用都是确定不能改变的,但是该变量的内容是可以更改的,也就是变量的值. 位置參数变量如下: 位置参数变量 作用 $n n为数字,$0代表命令本身,$1-$9代表(脚本命令后的)第一到第九个参数,十以上的参数需要用大括号包含,如${10}.${15}. $* 这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体. $@ 这个变量也代表命令行中所有的参数,…
目录 1.Shell常用运算符 2.Shell中数值运算的方法 (1)方式一 (2)方式二 (3)方式三(推荐) 1.Shell常用运算符 Shell中常用运算符如下表: 优先级数值越大优先级越高,具有较高优先级级别的运算符先于较低级别的运算符进行求值运算. 优先级 运算符 说明 13 -,+ 单目负.单目正 12 !,~ 逻辑非.按位取反或补码 11 *,/,% 乘.除.取模 10 +,- 加.减 9 <<,>> 按位左移.按位右移 8 <=,>=,<,>…
目录 1.预定义变量$? 2.预定义变量$$和$! 我们之前说过,Shell中的变量不是按照变量值的类型来进行分类的,而是按照Linux系统中定义的变量类别来分类的. 预定义变量就是,事先把变量的名称和作用确定好(都是不可变的),只能修改变量的内容,也就是变量的值. 其实预定义变量和位置参数变量都可以统称为预定义变量(有分开说明的,也有一起说明的,知道就行). 预定义变量如下: 预定义变量 作用 $? $?中存的值,是最后一次执行的命令的返回状态.如果这个变量的值为0,证明上一个命令正确执行:如…
目录 1.declare命令介绍 2.声明数组变量类型 3.声明变量为环境变量 4.声明只读属性 5.补充: 1.declare命令介绍 Shell中所有变量的默认类型是字符串类型,如果你需要进行特殊数据类型进行运算,使用declare命令就可以实现声明变量的类型. declare命令是一个内置命令,命令如下: [root@localhost ~]# declare [+/-] [选项] 变量名 选项: -: 给变量设定类型属性. +: 取消变量的类型属性. -а: 将变量声明为数组型. -i:…
目录 1.echo命令的作用 2.echo命令的基本用法 3.echo命令的-e选项用法 4.echo命令一些特殊用法 (1)输出字符带有字体颜色 (2)输出字符带有背景颜色 在讲Shell脚本之前,要先说一个我们之前学过的命令,echo命令. echo命令是Linux中最基础的命令,也是很常用的命令,特别是在写Shell脚本的时候,可能会经常被用到,虽然echo命令非常基础,但是功能还算丰富. 1.echo命令的作用 用于打印输出文本(字符串). 在脚本中echo命令常用于在显示器上显示一段文…
目录 1.正则表达式说明 2.基础正则表达式 3.练习 (1)准备工作 (2)*练习 (3).练习 (4)^和$练习 (5)[]练习 (6)[^]练习 (7)\{n\}练习 (8)\{n,\}练习 (9)\{n,m\}练习 4.总结 1.正则表达式说明 正则表达式和通配符的区别 正则表达式用来在文件中匹配符合条件的字符串. 通配符用来匹配符合条件的文件名. 在Shell中,使用在文件当中搜索字符串的命令,如grep,awk,sed等命令(文本操作三剑客),可以支持正则表达式. 而在系统当中搜索文…
目录 1.扩展正则表达式说明 2.练习 (1)+和?练习 (2)|和()练习 3.注意(重点) 1.扩展正则表达式说明 熟悉正则表达式的童鞋应该很疑惑,在其他的语言中是没有扩展正则表达式说法的,在Shell的正则表达式中还可以支持一些元字符,比如+.?.|.(). 其实Linux系统是支持这些字符的,只是grep命令默认不支持而已(grep命令无法识别扩展正则表达式). 如果要想支持这些字符,必须使用egrep命令或grep -E选项,才能识别扩展正则表达式的字符,所以我们又把这些字符称作扩展字…
目录 1.sed命令说明 2.行数据操作 (1)查看文件中的数据 (2)删除文件中的数据 (3)向文件中追加数据 (4)向文件中插入数据 (5)修改文件中的多行数据(删除,追加,插入) (6)替换文件中的整行文本 (7)字符串替换 (8)同时执行多条动作 3.总结 1.sed命令说明 sed主要是用来将数据进行选取.替换.删除.新增的命令,grep,awk,sed称为是文本操作三剑客. 我们看看sed命令的语法格式: [root@localhost ~]# sed [选项] '[动作]' 文件名…