Linux

有沒有辦法讓 ls 只顯示某些目錄的隱藏文件?

  • December 19, 2017

我有一個目錄,無論選擇什麼使用者或選項,我都希望它始終顯示隱藏文件。

我知道該-a選項將顯示隱藏文件。我只想自動決定使用該選項。

假設我在 /home/user 我不想看到隱藏文件,但是如果我在 /filestoprcess 我想查看隱藏文件。

這種類型的功能是否存在?

我能想到的最簡單的方法是創建一個映射到函式的 shell 別名。假設我們正在使用 bash 並將以下別名添加到您的.bashrc:

alias ls=ls_mod

現在,添加以下ls_mod函式:

ls_mod () {
   DIRS_TO_SHOW_HIDDEN=(dir1 dir2 dir3)
   for DIR in "$@"; do
       for CHECK in "${DIRS_TO_SHOW_HIDDEN[@]}"; do
           if [ "$(realpath "$DIR")" == "$CHECK" ]; then
               ls -a "$DIR"
           else
               ls "$DIR"
           fi
       done
   done
}

我沒有測試過這個,所以我懷疑它是否完美,但至少它給了你這個想法。您可能需要努力將額外的參數傳遞給ls.

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