Ls

如何使用 ls 按權限對文件進行排序?

  • February 26, 2019

我在一個目錄中有大量文件和目錄。

我需要根據權限對它們進行排序。

例如

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}'

這將只列印第一個欄位(權限)和最後一個(文件名)。

引用自:https://unix.stackexchange.com/questions/165225