简单的awk应用

发布时间 2023-06-03 04:59:55作者: 光辉233

利用awk命令计算文件大小

使用组合命令列出/boot目录中每一个文件的文件名和大小
ls -lF /boot | awk '{print $5 "\t" $9}' | sort -rn

这样输出结果以后列出/boot 目录中每一个文件的文件名和大小,文件大小和文件名再次由制表符隔开,并采用文件大小由大到小的顺序输出,-r表示逆序,-n表示按照数字排序

如果想要知道/boot目录下所有文件大小的总和, 可以在awk命令中加入常量和带有加法的表达式
ls -lF /boot | awk '{totalsize ++ $5; END print totalsize}'

如果经常使用上面的组合命令, 可以使用下面的这个方法将其存入一个名为script的文件中

[uubntu]$ cat << EOF > script
> {totalsize += $5}
> END {print " /boot directory has a total of "   totalsize     "bytes used across"   NR      " files. "}
> EOF

首先在终端窗口中输入cat << EOF > script,该命令的含义是接收来自标准输入(键盘)的信息并以EOF(End of File)作为输入的结束符,并且将所有的标准输入输出重定向输入script文件中,其中>符号是系统系统显示的,EOF是文件(输入)结束符