当我ls -l
在目录上运行时,我看到一个标题为“.”的条目。如何删除包含“.”的行从输出?
ls -latr /foo | tail -n5
-rw-rw-r-- 1 guest bar 59169 Aug 20 12:22 foobar
-rw-rw-r-- 1 guest bar 59169 Aug 20 12:23 bar1
-rw-rw-r-- 1 guest bar 59169 Aug 20 12:24 foobar42
-rw-rw-r-- 1 guest bar 59169 Aug 20 12:25 foo
drwxrws--- 8 guest bar 102400 Aug 20 12:26 .
我认为 cut 应该可以工作,但我找不到正确的语法。
ls -latr |tail -n5|cut -d'.'
ls -latr |tail -n5|cut -d.
答案1
假设 GNU 或 BSD ls:
ls -lAtr /foo
答案2
...如果 ls 不是 GNU ls,
ls -latr ... | grep -v '^d.* \.$'