Linux常见命令——(三)

来源:互联网 发布:斗鱼刷屏软件 编辑:程序博客网 时间:2024/06/07 01:35

awk数据流处理工具

  • awk脚本结构
    awk ’ BEGIN{ statements } statements2 END { statements3 } ‘

  • 工作方式
    1、执行begin中语句块
    2、从文件或stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕
    3、执行end语句块

  • 使用不带参数的print时,会打印当前行
    echo -e “line1\nline2” | awk ‘BEGIN { print “start” } { print } END { print “End” }’

  • 特殊变量: NR NF 01 $2

    NR:表示记录数量,在执行过程中对应当前行号;
    NF:表示字段数量,在执行过程总对应当前行的字段数;
    0:1:第一个字段的文本内容;
    $2:第二个字段的文本内容;

  • 打印每一行的第二和第三字段
    awk ’ { print 2,3 }’ file

  • 过滤
    awk ‘NR < 5’ #行号小于5
    awk ‘NR==1,NR==4 {print}’ file #行号等于1和4的打印出来
    awk ‘/linux/’ #包含linux文本的行(可以用正则表达式来指定,超级强大)
    awk ‘!/linux/’ #不包含linux文本的行

  • awk结合grep找到指定的服务,然后将其kill掉
    ps -fe| grep msv8 | grep -v MFORWARD | awk ‘{print $2}’ | xargs kill -9;

  • awk实现head命令
    awk ‘NR<=10{ print }’ filename

磁盘管理

  • 查看磁盘空间
    df -h
  • 查看当前目录所占空间
    -h 人性化显示
    -s 递归整个目录的大小
    du -sh
  • 查看当前目录下所有子文件夹排序后的大小
    du -sh ls | sort

打包、压缩

  • 打包
    tar -cvf etc.tar /etc
    -c:打包选项
    -v:显示打包进度
    -f:使用档案文件

  • 压缩
    gzip demo.txt

解包、解压缩

  • 解包
    tar -xvf demo.tar
    -x:解包选项

  • gz解压
    tar -zxvf demo.tar.gz

    gunzip demo.tar.gz
    tar -xvf demo.tar

  • bz2解压
    tar jxvf demo.tar.bz2

    bzip2 -d demo.tar.bz2
    tar -xvf demo.tar

原创粉丝点击