Shell基础

基础命令

检查系统环境变量的命令
  • set: 输出所有变量,包括全局变量和局部变量
  • env:只显示全局变量
  • declare:输出所有变量,如同set
  • export:显示和设置环境变量值
撤销环境变量
  • unset 变量名:删除变量或者函数
设置只读变量
  • readonly name=“asd” : 只有shell结束,只读变量失效

基础符号

  • 双引号:变量名会替换成变量值
  • 单引号:不识别特殊语法
  • 无引号:输入结果,但是不会将含有空格的字符串视为一个整体,如果其中有命令或变量会先把命令或者变量解析出来
  • 反引号:反引号中执行命令的结果会保留下来
  • $() :作用和反引号一样,比较直观,但是有些linux机不支持
  • ${} : 获取变量的值等同于 $变量名
  • [ ] : 条件框

特殊变量

特殊状态变量
  • $? : 上一次命令执行状态的返回值 0 正确,非 0失败
  • $$ : 当前shell的脚本进程号
  • $! : 上一次后台进程的PID
  • $_ :上一次命令的最后一个参数
特殊参数变量
  • $0 : 执行脚本的名称
  • $1-9 : 脚本执行时的参数1到9
  • $# : 脚本执行时输入参数的个数
  • $@ : 输入的参数的具体内容(将输入的参数作为一个多个对象,即是所有参数的一个列表)
  • $* : 输入的参数的具体内容(将输入的参数作为一个单词)

条件判断

文件/文件夹判断
条件说明
-b file如果 FILE 存在且是一个块特殊文件则为真
-c file如果 FILE 存在且是一个字特殊文件则为真
-d file如果 FILE 存在且是一个目录则为真
-e file如果 FILE 存在则为真
-f file如果 FILE 存在且是一个普通文件则为真
-g file如果 FILE 存在且已经设置了SGID则为真
-k file如果 FILE 存在且已经设置了粘制位则为真
-p file如果 FILE 存在且是一个名字管道(F如果O)则为真
-r file如果 FILE 存在且是可读的则为真
-s file如果 FILE 存在且大小不为0则为真
字符串判断
条件说明
-z string为空即为真
-n string非空即为真
string1 = string2string1 等于 string2 为真
string1 != string2string1 不等于 string2 为真
[string]与-n类似,非空即为真
数值判断
条件说明
-eq相等
-ne不相等
-gt大于
-ge大于等于
-lt小于
-le小于等于
复杂逻辑判断
条件说明
-a
-o
!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薄年阿豪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值