我想剪切包含文件大小的列.我ls -l用来查看当前本地化中的文件信息.我在txt文件中保存有关文件的信息ls -l > info.txt,现在我想剪切包括大小的列.我这样做,cat info.txt | cut -d'' -f6但我不工作.我做错了什么?
这包括info.txt:
-rwx------ 1 s10891 Domain Users 2188 May 4 14:51 info.txt
-rwx------ 1 s10891 Domain Users 1640 Mar 10 07:43 code.txt
-rwx------ 1 s10891 Domain Users 68 Mar 4 11:59 sorted.txt
drwx------ 1 s10891 Domain Users 0 Jan 11 09:48 PPJ
drwx------ 1 s10891 Domain Users 0 Sep 7 2012 public_html
drwx------ 1 s10891 Domain Users 0 Apr 15 11:16 RBD
drwx------ 1 s10891 Domain Users 0 Jan 7 09:45 RDB
drwx------ 1 s10891 Domain Users 0 Apr 15 12:00 SOP
drwx------ 1 s10891 Domain Users 0 Apr 8 12:53 sop_ex3
-rwx------ 1 s10891 Domain Users 122 Feb 25 11:48 sop_info.txt
drwx------ 1 s10891 Domain Users 0 Jan 14 09:41 WindowsFormsApplicati
drwx------ 1 s10891 Domain Users 0 Jan 14 09:41 WindowsFormsApplicati
drwx------ 1 s10891 Domain Users 0 Jan 14 09:41 WindowsFormsApplicati
Run Code Online (Sandbox Code Playgroud)
我想得到这个:
2188
1640
68
0
0
0
0
0
0
122
0
0
0
Run Code Online (Sandbox Code Playgroud)
大多数cut是计算文字字符,因此-f 6要使用,您的数据必须完全在同一列中.不确定你的第3行到最后一行是输错管还是输出的精确再现,但它完美地说明了切割的问题.
在这种情况下,大多数人会使用awk解决方案:
ls -l | awk '{print $6}'
Run Code Online (Sandbox Code Playgroud)
将产生您列出的输出
awk的美妙之处在于字段6由awk FS变量(字段分隔符)的值决定,默认为"多个空格值"(空格或制表符)(这不是一个确切的描述,但足够接近你的需要).
| 归档时间: |
|
| 查看次数: |
6592 次 |
| 最近记录: |