Yanıtlar:
-R
Bayrağın işe yarayacağına eminim - yine de benim için her zaman vardır. Ne işe yaramayacak ve komut satırı kullanımımın başlarında beni tetikleyen *
, gizli dosyalar / dizinlerin bulunduğu bir dizinde kullanılıyor . Yani yapıyor
$ chown -R /home/user/*
Gizli dosya ve klasörleri yapmayacak. Ancak takip ederseniz
$ chown -R /home/user/.[^.]*
o zaman tüm gizli dosyaları yapacaksın (ama yapmayacaksın .
ya ..
da /home/user/.*
yapmayacaksın). Bunları söyledikten sonra beklerdim
$ chown -R /home/user
tüm gizli dosyaları ve dizinleri içeri almak için /home/user
- bu elbette dizinin kendisinin izinlerini de değiştirecektir, bu da sizin istediğinizi olmayabilir.
chown nginx:nginx -R /path/to/.[^.]*
ve yalnızca gizli dosyaları değiştirerek sahipliğini değiştirdi. Hepsi değil.
*
için ikisini de yapmalı ve takip etmelisiniz .[.^]*
.
Aşağıdaki komutun bunun için çalışması gerektiğine inanıyorum.
chown -hR userid:usergroup /nameofdirectory/nameofsubdir/
"chown -R" işe yarıyor, fakat alternatif bulmayı kullanıyor olabilir.
find /path/to/dir -exec chown USER {} \;
+
yerine ;
o dosya / dizine başına bir çatal yerine chown işlemi çatal minimum gerekli numarasını kullanmak gibi -exec için sonlandırıcı olarak daha verimli olacak
For döngüsü ile kullanma ls -A
seçeneği, Hepimiz gizli dosyaları bulabilirsiniz ve dizin dışlamak .
ve ..
sonra da tüm gizli dosyalar ve dizin için sahipliği değiştirme.
for i in `ls -A | grep "^\."`;do chown -R user:group $i;done
xargs
Seçeneğini kullanınls -A
ls -A | grep "^\." | xargs chown user:group
Daha fazla ayrıntı için Buraya Tıklayın ve Sitemi Ziyaret Edin
Ayrıca, eğer benim gibiyseniz, muhtemelen şu anki dizinden chown ile çalışıyor olacaksınız. Ben böyle çalışan alışık edildi: chown rails.rails -R *
. Yıldız işaretini bir noktaya (şu anki dizinin kısaltması) değiştirmek, bunun gibi chown rails.rails -R .
gizli dizinleri getirir.
chown
Gizli dosyalar ve dizinlerle çalışacaktır. Aşağıdaki örnekte, içindeki tüm dosyalar için kullanıcı ve grup sahipliğini değiştireceğiz ~/some/folder
. Tüm dosyalar tümünü içerir gizli dosyaları (örneğin .bashrc
, .profile
en vb) ve klasörler ~/some/folder
seviyesi ve aşağıda. Özellikle sahipliğini değiştirmek istemediğimizi ~/some
ve bu nedenle dosyayı ~/some/..
sahiplik değişikliklerinin dışında tutacağımızı unutmayın .
$ cd ~/some/folder
$ sudo chown -R usrname:grpname .
$
Gibi bir şey yapabilirsin
for i in `ls -A`;do chown -R user:group $i;done
-A
( Sermaye A) o hariç tutar kadar önemlidir. '' ve '..'
chown
, dizinin kendisinin yanı sıra, içeriğinin tamamındaki izinleri değiştirmenize ya da dilediğiniz ya da istemeyeceğiniz yan etkisi vardır.