我想通過使用awk命令打印目錄。我不希望打印的當前和父目錄,所以我已經創建了一個合適的正則表達式匹配:如何使用awk命令僅打印目錄
ls -la | awk '$1 ~ /[d].*/ && $9 !~ /^\.$/ && $9 !~ /^\.\.$/ { print $1"\t"$9 } '
代碼工作正常,但我想,使其更具可讀性,就像這樣:
ls -la | awk '$1 ~ /[d].*/ && $9 !~ /^\.{1,2}$/ { print $1"\t"$9 } '
不幸的是,第二場比賽不起作用。
它應該如何定義匹配一個或兩個點 s?
爲什麼不乾脆使用'ls -lA'將會排除'.'和'..'的條目? – larsks
是的,使用迄今爲止已經實現的命令但是你必須知道它們總是更好......謝謝你的迴應。我會利用你的建議,但我仍然想知道如何正確定義我的正則表達式來實現它的目標。 – Dominik
都適用於我 – michaeltang