Ls
如何使用 ls 按權限對文件進行排序?
我在一個目錄中有大量文件和目錄。
我需要根據權限對它們進行排序。
例如
drwx------ drwxr-xr-x drwxr-x---
我只是想知道我們是否可以使用 對文件和目錄進行排序
ls
?
ls
不直接支持按權限排序,但是可以和sort命令結合使用:ls -l | sort
您可以使用
-k
排序選項從特定字元開始匹配,格式為-k FIELD.CHAR
,權限為ls
輸出中的第一個欄位。因此 eg-k 1.2
將從權限字元串的第二個字元開始,這將忽略任何目錄/設備/連結等標誌,或-k 1.5
按組權限排序。如果您不想要 的額外輸出
ls -l
,可以使用 awk 將其刪除:ls -l | sort | awk '{ print $1, $NF}'
這將只列印第一個欄位(權限)和最後一個(文件名)。