shell脚本中使用ls和awk命令组合获取文件大小,改进版本适用cygwin。
以较长格式列出文件信息显示如下:
$ ls -l pad10*
-rwxrwx---+ 1 Administrators Domain Users 1024 8月 18 15:58 pad1024.bin
-rwxrwx---+ 1 Administrators Domain Users 10240 8月 17 22:17 pad10240.bin
-rwxrwx---+ 1 Administrators Domain Users 102400 8月 18 15:35 pad102400.bin
隐藏用户组之后显示如下
$ ls -lG pad10*
-rwxrwx---+ 1 Administrators 1024 8月 18 15:58 pad1024.bin
-rwxrwx---+ 1 Administrators 10240 8月 17 22:17 pad10240.bin
-rwxrwx---+ 1 Administrators 102400 8月 18 15:35 pad102400.bin
因用户组可能是一个字符串,也可能是两个字符串,隐藏用户组具有更强的适用性。
在以上基础上,获取文件大小具有更高的实用性。不受可能带空格的用户组名称影响。
在较长格式命令下获取文件大小
$ ls -l pad10* | awk '{print $6}'
1024
10240
102400
隐藏用户组后,获取文件大小
$ ls -lG pad10* | awk '{print $4}'
1024
10240
102400
Tags:
shell ls awk 文件大小 cygwin
shell ls awk 文件大小 cygwin