shell脚本语言学习笔记

书写注意事项

  • if一定要有fi结尾,否则会出现“then” umatch错误
  • 运算式一定要加上expr,即i=0,i=i+1,echo $i 输出为0+1
    i=expr i + 1,echo $i输出为1,expr的格式要注意,不能无空格

  • $与${}本质上无区别,$后面的变量名无法转换,${}中的变量名可以转换。$A与${A}是一样的,但$a[]会出错,${a[]}为访问全数组

  • #注释要另起一行

特殊变量

  • $0该bash文件名
  • $?上一指令返回值
  • $*所有位置参数内容,返回为单个字符串
  • $@所有位置参数内容,返回为多个字符串
  • $n第n个参数
  • $#所有参数
  • &0标准输入
  • &1标准输出
  • &2标准错误
  • &n(n>2)为自定义文件描述符

正则表达式

  • ${param:-word}若param为空或未赋值,word取代param,返回word
  • ${param:=word}若param为空或未赋值,word赋值给param,返回param
  • ${param:?msg}若param为空或未赋值,msg输出至STDERR
  • ${param:+word}若param为空或未赋值,使word为输出值

元字符

  • *匹配0个以上的字符
  • ?匹配1个字符
  • [0-9]匹配0-9
  • [a-z]匹配a-z
  • [A-Z]匹配A-Z
  • |管道符,前一命令的输出作为后一命令的标注输入
  • >重定向,会覆盖原文件
  • >>重定向,不会覆盖原文件,在后尾追加
  • “将命令输出作为另一命令的参数
  • “”字符串,允许转义
  • ”字符串,不允许转义
  • \转义字符
  • ^匹配符(正则)或者否定符
  • $匹配符
  • \正则表达式
  • .单独使用为执行,变量使用为当前目录
  • n <&- 把号输入关闭
  • n >&- 把号输出关闭
  • :空命令

常见操作

  • sleep睡眠暂停(按秒计)
  • xargs从标准输入中接受单词列表,并将这些单词作为参数传递给指定的命令
  • cpio 复制备份
  • grep过滤文本
  • stty用于检查和修改当前注册的终端的通信终端
  • uname确定版本
  • let/bc算术命令
  • kill退出进程
  • trap设置和清除接收到信号时采取的动作
  • set调试和设置数组并初始化
  • sed/awk文本处理
  • man帮助
  • su切换用户
  • touch修改文件时间或者创建新文件
  • dumpe2fs列出文件系统
  • df列出文件系统整体磁盘使用量
  • du评估文件系统的磁盘使用量
  • fsck修复磁盘
  • mount挂载磁盘
  • parted分区命令
  • gzip压缩,后缀为.gz
  • bzip2压缩,后缀为.bz2
  • tar打包
  • dump备份
  • restore恢复
  • dd备份设备
  • env查看环境变量
  • read读取键盘输入
  • alias别名命名
  • unalias去除别名
  • history列出历史
  • sort排序
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值