Gunakan chown
opsi rekursif:
chown -R owner:group * .[^.]*
Menentukan *
keduanya dan .[^.]*
akan cocok dengan semua file dan direktori yang find
akan. Pemisah yang direkomendasikan saat ini adalah :
bukannya .
. (Seperti yang ditunjukkan oleh justins, menggunakan .*
tidak aman karena dapat diperluas untuk memasukkan .
dan ..
, menghasilkan chown
mengubah kepemilikan direktori induk dan semua subdirektorinya.)
Jika Anda juga ingin mengubah kepemilikan direktori saat ini, ini dapat disederhanakan menjadi
chown -R owner:group .
Untuk perintah seperti chown
yang memiliki rekursinya sendiri, paling cepat menggunakan opsi itu:
chown -R owner:group * .[^.]*
Peringatan! Di beberapa shell, bentuk chown -R owner:group * .*
menggantikan pemilik di direktori root / . Karena .*
berarti ../../../../root, ../bin ... etc
. Semua jalur. Namun, shell yang paling banyak digunakan adalah bash , tidak berlaku .
dan ..
, memperluas pola.
Namun perlu diketahui bahwa masalah utama yang memperlambat penggunaan find
Anda adalah Anda memanggil chmown
pada setiap direktori dan file yang ditemukan. Jauh lebih cepat untuk digunakan:
find . -type f -exec chown <owner>:<group> {} +
find . -type d -exec chown <owner>:<group> {} +
karena setiap kali chown
dipanggil dengan parameter sebanyak yang sesuai pada baris perintah.
Perubahan itu berfungsi untuk perintah lain, yang tidak memiliki opsi rekursi bawaan seperti chown
, demikian juga. Dan itu berfungsi (dan meningkatkan kecepatan) dalam situasi di mana ada opsi rekursi seperti itu tetapi Anda tidak dapat menggunakannya (misalnya saat menggunakan chmod
, dan Anda hanya ingin mengubah direktori).