find $DIR -depth -maxdepth 3 \
-type d -readable -printf \
'printf "\\n%p\\n"
ls -t --color=always "%p"\n' |\
. /dev/stdin 2>&-
Ini menghindari masalah daftar argumen karena satu-satunya argumen yang lsakan diterima adalah nama direktori yang ingin Anda daftarkan. Anda dapat melakukan ini dengan apa pun yang Anda suka.
Shell hanya . sourcesitu |pipesebagai shell script - itu proses yang sama dan tidak memiliki masalah Anda dapat menemukan ketika execvedisebut.
Dalam hal apa pun - yang di atas hanya tiga kedalaman yang dapat disesuaikan dengan mengubah maxdepth. Ini juga mendalam dulu - jadi Anda bekerja mundur ke direktori saat ini dari depth.
Anda mungkin memperhatikan Anda juga mendapatkan $LSCOLORS- di mesin saya itu juga menyediakan kolom tercetak rapi dan segala sesuatu yang Anda inginkan ls- atau, dalam hal ini, apa pun yang dapat Anda bayangkan akan Anda lakukan dengan. source.
TANPA SVN
Sekali lagi, ini akan melakukan apa pun yang Anda harapkan ls. Jadi menyembunyikan .svnfile semudah mengubah lsbaris menjadi:
ls -t --color=always --hide="*svn" "%p"\n
Atau jika Anda ingin melihat svnekstensi di setiap folder TETAPI ./svnAnda bisa mengubahnya sehingga seluruh perintah terlihat seperti ini:
find $DIR -depth -maxdepth 3 \
-type d -readable -printf \
'printf "\\n%p\\n" ; hide=
[ "%p" = "./svn" ] && hide="*svn"
ls -t --color=always --hide="$hide" "%p"\n' |\
. /dev/stdin 2>&-
Secara pribadi, saya suka dengan ls -sdan, jika Anda peduli, -uakan mengurutkan berdasarkan waktu akses daripada waktu mod.