Lütfen koşmaya çalışmadan önce cevabın tamamını okuyun sudo
Koşmayı dene sudo /dvtcolorconvert.rb ~/Themes/ObsidianCode.xccolortheme
Sudo komutu, onu takip eden komutları 'süper kullanıcı' veya 'kök' ayrıcalıklarıyla yürütür. Bu, komut satırından neredeyse her şeyi yürütmenize izin vermelidir. Bu, BUNU YAPMAYIN dedi ! Bilgisayarınızda bir komut dosyası çalıştırıyorsanız ve işletim sisteminizin temel bileşenlerine erişmek için ihtiyacınız yoksa (betiği ana dizininizdeki (~ /) bir şeyde çalıştırdığınız için çalışmadığınızı tahmin ediyorum), o zaman ana dizininizden çalışıyor olmalıdır, yani:
~/dvtcolorconvert.rb ~/Themes/ObsidianCode.xccolortheme
~ / Veya bir alt dizine taşıyın ve oradan çalıştırın. Orada asla izin sorunlarınız olmamalı ve işletim sisteminiz için kritik olan herhangi bir şeye erişme veya değiştirme riski olmayacaktır.
Hala sorun yaşıyorsanız ls -l, ruby betiği ile aynı dizinde çalışarak dosya üzerindeki izinleri kontrol edebilirsiniz . Bunun gibi bir şey alacaksın:
$ ls -l
total 13
drwxr-xr-x 4 or019268 Administ 12288 Apr 10 18:14 TestWizard
drwxr-xr-x 4 or019268 Administ 4096 Aug 27 12:41 Wizard.Controls
drwxr-xr-x 5 or019268 Administ 8192 Sep 5 00:03 Wizard.UI
-rw-r--r-- 1 or019268 Administ 1375 Sep 5 00:03 readme.txt
Readme.txt dosyasının -rw-r--r--solda yazdığını fark edeceksiniz . Bu, söz konusu dosyanın izinlerini gösterir. Sağdan 9 karakter 3 karakterlik 'rwx' (okuma, yazma, yürütme) gruplarına ayrılabilir. Bu dosyaya yürütme hakları eklemek istersem yürütürüm chmod 755 readme.txtve bu izinler kısmı olur rwxr-xr-x. İstersem şimdi bu dosyayı çalıştırabilirim ./readme.txt(./ bash'a $ PATH değişkenini aramak yerine istenen komut için geçerli dizine bakmasını söyler).
schluchc chmod için man sayfasına bakmayı ima ediyor, bunu çalıştırarak yapın man chmod. Belirli bir komutla ilgili belgeleri almanın en iyi yolu budur,man <command>