是一个程序可以解析shell命令
自定义的变量——局限在某个脚本中使用
将一个命令执行之后的结果赋值给某个变量(下面两种方式都可以)
算术运算(只能在整型之间做算数运算)
用export命令鈳以把本地变量导出为环境变量
注意!!!加上“”之后$*和$@会发生变化!!!
将执行完命令之后得到的数据保存到变量
$[base#n] 数值按照几进制进行运算
单引号中的内容原样输出
会继續双引号中的命令, 输出结果字符串
上图中pwd执行成功了,因此返回值是0
linux中的文件种类: 7种
当filename 存在并且是块攵件时返回真(返回0) |
当filename 存在并且是字符文件时返回真 |
当pathname 存在并且是一个目录时返回真 |
当由pathname 指定的文件或目录存在时返回真 |
当filename 存在并且是正规(普通)文件时返回真 |
当由pathname 指定的文件或目录存在并且设置了SGID 位时返回真 |
当由pathname 指定的文件或目录存在并且设置了"粘滞"位时返回真 |
当filename 存在并且是命名管道时返回真 |
当由pathname 指定的文件或目录存在并且可读时返回真 |
当filename 存在并且文件大小大于0 时返回真 |
当fd 是与终端设备相关联的文件描述符时返回真 |
当由pathname 指定的文件或目录存在并且设置了SUID 位时返回真 |
当由pathname 指定的文件或目录存在并且可写时返回真 |
当由pathname 指定的文件或目录存在并且可執行时返回真 |
当由pathname 存在并且被当前进程的有效用户id 的用户拥有时返回真(字母O 大写) |
当由pathname 存在并且属于当前进程的有效用户id 的用户的用户组时返回真 |
例如测试文件filename是否为目录文件
字符串string 为空串(长度为0)时返回真 |
字符串string 为非空串时返回真 |
字符串str1 和字符串str2 相等时返回真 |
字符串str1 和字符串str2 不相等时返回真 |
如果int1 不等于int2,则返回真 |
如果int1 小于等于int2则返回真 |
如果int1 大于等于int2,则返回真 |
逻辑与操作符两边均为真,结果为真否则为假。 |
逻辑或操作符两边一边为真,结果为真否则为假。 |
逻辑否条件为假,结果为真 |
:——是一个特殊的命令,称为空命令
例子(下面两个for循环的结果相同)
例子——输入三次密码三次错误退出程序
echo "密码错误,请偅新输入"break 可以选择跳出的层数
例子——将指令cmd的标准输出(1)重定向到file标准错误(2)重萣向到标准输出(1)——标准输出和标准错误都写入file文件中
1、awk缺省的行分隔符是换行
2、缺省的列分隔符是连续的空格和Tab
4、如果不是缺省分隔符的如何指定分隔符
5、例子——拆分/etc/passwd,找到每个用户对应的家目录
awk 参数 脚本文件 目标文件例子——找出以g开头的字符串的第三列
第一步——找出所有进程号在1000到2000之间的进程
第二步,设置变量x(x的默认值为0)用于记录当前符合条件的进程号是第几个符合条件的
第三步,添加条件END(END——代表遍历结束)
#shell脚本没有返回值没有參数,但是可以传参 #> /dev/null重定向到垃圾回收站扔进去之后,输出就没有了 #如果查到了该进程则$?的值是0 #说明该进程没有被启动 # 登录 -n代表不加換行 # 判断redis目录是否存在, 如果不存在则创建 #如果传入的第一个参数不是目录 # 判断redis目录是否存在, 如果不存在则创建 # 根据参数设置redis状态 #提示用户需要传入参数 # 函数调用,函数传入的参数是$NAME # 休眠1s, 等待pid文件被创建出来, 再进行后续判断 # printf是一个命令用于在中断进行输出 # 判断pid文件是否存在