Ada sebuah perintah, saya pikir itu datang dengan apache, atau entah bagaimana terkait dengannya, yang memeriksa izin, semua jalan turun. Jadi jika saya memiliki /home/foo/bar/baz
itu akan memberitahu saya apa hak akses adalah untuk baz
, bar
, foo
, dan home
. Adakah yang tahu apa perintah ini atau cara lain untuk melakukan ini? Perintah ini pada dasarnya dimulai pada argumen, dan berfungsi hingga /
Anda tahu apa izin di sepanjang jalan sehingga Anda dapat melihat apakah Anda memiliki masalah izin.
sumber
namei -l $PWD/public_html/
Dari dir Anda saat ini us $ PWD untuk mendapatkan daftar perms hingga dir Anda saat ini.Saya tidak mengetahui perintah apa pun, tetapi cukup mudah untuk menulis skrip:
Contoh:
sumber
Bagaimana dengan fungsi bash rekursif untuk solusi yang menyenangkan:
sumber
cd .. >/dev/null
bagi kita dengan satu$CDPATH
set (yang menyebabkan cd untuk mengeluarkan dir saat ini ketika digunakan dan yang mengganggu output dari fungsi Anda.)Saya pikir perintah yang Anda cari adalah:
yang, ketika dieksekusi di / tmp / foo / bar, memberi Anda daftar seperti:
sumber
Ini bisa dengan mudah dijadikan satu-liner. Ini bukan rekursif dan harus menjadi cara yang relatif cepat dalam melakukan ini di bash. Memanggil pwd di setiap loop tidak terlalu cepat, jadi hindari jika Anda bisa.
Alternatif, satu-liner untuk direktori saat ini.
sumber
set -f
untuk mematikan globbing.cd -P
ikuti semua symlinks.secara bergantian, pertimbangkan untuk menggunakan
find
dengantac
sumber