所以我试图一次只显示列
首先ls -l给我这个
drwxr-xr-x 11 stuff stuff 4096 2009-08-22 06:45 lyx-1.6.4
-rw-r--r-- 1 stuff stuff 14403778 2009-10-26 02:37 lyx.tar.gz
我正在使用它:
ls -l |cut -d " " -f 1
得到这个
drwxr-xr-x
-rw-r--r--
它显示我的第一列就好了。然后我想看看第二栏
ls -l |cut -d " " -f 2
我只能得到这个
11
我不应该
11
1
?
它为什么这样做?
如果我尝试
ls -l |cut -d " " -f 2-3
我得到了
11 stuff
有必要更简单地显示列吗?
答案 0 :(得分:9)
这应显示第二栏:
ls -l | awk '{print $2}'
答案 1 :(得分:1)
cut认为两个连续的分隔符之间有一个空字段。所以第二行:
-rw-r--r-- 1 stuff stuff
有字段:
1: -rw-r--r--
2: --empty field--
3: 1
etc.
您可以在剪切中使用使用列字段:
ls -l | cut -c13-14
或者您可以使用awk来分隔字段(取消链接,剪切awk会将顺序分隔符视为单个分隔符)。