temukan file dengan ACL yang disetel


15

Bagaimana saya bisa menemukan semua file dengan beberapa set ACL yang diperluas, yaitu file-file dengan sedikit +di akhir tanda izin yang ditunjukkan oleh ls -l.

Saya tidak dapat menemukan bendera yang sesuai untuk find. Pendekatan naif saya akan finddikombinasikan dengan ls -ldan a grep. Tapi saya pikir ini tidak baik.

Apakah ada yang punya ide?

Jawaban:


14

getfacldapat membuang ACL secara rekursif, dan memiliki --skip-baseopsi untuk mengabaikan file tanpa ACL.

getfacl -R -s -p /directory | sed -n 's/^# file: //p'

0

Saya menemukan ini sebaliknya; untuk menemukan file tanpa ACL yang ditetapkan. Inilah yang akhirnya saya dapatkan (kalau-kalau beberapa googler lain menemukannya)

ls --color=auto -lR | grep -v "\+ " | grep -v "^[.,a-z,1-9]" | grep -v "^$"

Rupanya ls -Rlebih cepat daripada menemukan (saya punya file kagillion dan setiap perintah find memakan waktu 2 jam).


0

Versi Perl:

getfacl -R -p -s  / | perl -wn -e ' if (/^# file/) { s|^# file: /||; print; }'

0

-R: Daftar ACL semua file dan direktori secara rekursif.

-s: Lewati file yang hanya memiliki entri ACL dasar (pemilik, grup, lainnya).

getfacl -Rs .
getfacl --recursive --skip-base .
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.