用awk命令按年份统计输出ls -al命令下文件和目录的总大小
时间: 2023-06-25 14:03:15 浏览: 78
假设我们要统计的目录为`/path/to/dir`,可以使用如下命令:
```
ls -al /path/to/dir | awk '{sum[$8]+= $5} END {for (i in sum) printf("%s\t%s\n", i, sum[i])}'
```
其中,`ls -al /path/to/dir` 会列出该目录下所有文件和目录的详细信息,第八列为年份信息,第五列为文件大小信息。然后通过 awk 命令将每个年份的文件大小累加到 sum 数组中,最后遍历 sum 数组输出结果。
相关问题
按年份统计输出ls -al命令下文件和目录的总大小
可以使用 ls 命令结合 awk 命令来按年份统计输出文件和目录的总大小,命令如下:
```
ls -al | awk 'BEGIN {year = ""} {if ($8 ~ /^[0-9]{4}$/) {year = $8} sum[year] += $5} END {for (y in sum) {print y, sum[y]/1024/1024 "MB"}}'
```
其中,ls -al 命令用于列出当前目录下所有文件和目录的详细信息;$8 表示第八个字段,即文件或目录的年份;$5 表示第五个字段,即文件或目录的大小;$8 ~ /^[0-9]{4}$/ 表示判断第八个字段是否为四位数字,如果是,则认为该行记录是文件或目录的信息,记录该行信息所属的年份;sum[year] += $5 表示将该行记录所属年份的大小累加到数组 sum 中;END 为 awk 提供的特殊模式,表示在处理完整个文件后执行的操作;for(y in sum) 表示遍历数组 sum,y 为数组元素的键值,即年份;sum[y]/1024/1024 "MB" 表示将该年份下的文件和目录总大小从字节转换成 MB,并输出。
linux中使用awk命令打印输出free -h命令的第3列
可以使用 `awk` 命令来打印输出 `free -h` 命令的第三列。具体操作如下:
```
free -h | awk '{print $3}'
```
其中,`free -h` 命令用于查看系统内存的使用情况,`awk '{print $3}'` 表示打印输出第三列。
执行该命令后,会输出系统内存的使用情况中第三列的数值,即可方便地查看系统内存的使用情况。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)