./geany_run_script.sh: 5: ./geany_run_script.sh: ./Area_circumference: Permission denied
program exited with code: 126
. Kodumu yürütmeye çalıştığımda bu sorun her zaman oluşur. Çözüm ne olabilir?
./geany_run_script.sh: 5: ./geany_run_script.sh: ./Area_circumference: Permission denied
program exited with code: 126
. Kodumu yürütmeye çalıştığımda bu sorun her zaman oluşur. Çözüm ne olabilir?
İşte bunu açıklayan bir bağlantı Dosya iznini (ve sahipliğini) değiştirme
Bunları atlamak istiyorsanız (şimdilik elbette), kullanıcı giriş dizininizde bir dizin / klasör oluşturabilir ve kendi dizininiz üzerinde çalışabilirsiniz. C
orada programlar (veya diğerleri).
Terminali açabilirsiniz (tuşuna basın Ctrl + Alt + T) ve cd
hedef dizine:
cd /path/to/target
Dosyaya "the_fıle_name" yürütme izni vermek için (dosya sistemi RW haklarına izin veriyorsa):
chmod +x the_file_name
Vermen gerek. execute
ve read
izinler. Bunu takip et:
chmod u+r+x filename.sh./filename.sh
Yeni bir komut dosyası oluşturduğumuzda, varsayılan olarak okuma ve yazma iznine sahiptir.Ancak bunları yürütmek istiyorsak, yukarıda gösterildiği gibi yürütme izni vermeliyiz.
Yürütme biti tek başına kabuk komut dosyaları için yeterli değildir, dosyayı yürütmek için de okuyabilmelidir (yalnızca yürütme izni bitine ihtiyaç duyan ikili dosyaların aksine)
Tuşuna basarak terminal uygulamanızı açın CTRL
+ ALT
+ T
veya grafik ortamındaki apposite kısayolu ile (örneğin Terminal
veya xTerm
).
Ekranda görünen tekdüze pencerede yanıp sönen bir karakter göreceksiniz, bu terminal cursor
: sadece pencereye tıklayın ve metin girmek için yazın (genellikle komutlar) ve tuşuna basın ENTER
girişi onaylamak için.
İmlecin önünde her zaman dosya sistemindeki geçerli konumunuz listelenir. root directory
("/") ve evinize (kişisel dosyalarınızın bulunduğu yere) "~" denir.
Dizin / klasör kullanımını değiştirmek için cd EXISTENTFOLDER
(EXİSTENTFOLDER'I klasör adıyla değiştirin); kaybolduğunuzu düşünüyorsanız, şunu yazmanız yeterlidir cd
bir göz açıp kapayıncaya kadar ana dizininize dönmek için!
Şimdi sorununuzu çözelim.:
Kullan... cd
kaynak kodunuzla dizini bulmak için komut verin. Kullanmak TAB
sana yardım etmek için. Eğer idam edersen ls -lh
izlenecek olası yolların ve yürütülecek dosyaların bir listesini görürsünüz.
Engellenen dosyayı bulduğunuzda yürütün chmod +x FILENAME
(dosya adını kaynak kod dosyanızın adıyla değiştirin).
Birden çok engellenen dosyanız varsa yürütün chmod +x *
geçerli dizindeki tüm dosyaların kilidini açmak için. Asla chmod + x tehlikeli veya güvensiz dosyalar.
İcra etmek ./FILENAME YOUREVENTUALARGUMENTS
yürütülebilir dosyanızı çalıştırmak için.
Derlenmiş programınız giriş dizininizin dışında okumaya / yazmaya çalışırsa, bunu şu şekilde yürütmeniz gerektiğini unutmayın root
kullanarak sudo ./FILENAME YOUREVENTUALARGUMENTS
.
Bir komutu yürütmek için bir el kitabına sahip olmak istiyorsanız man COMMAND
(KOMUTU tam komut adıyla değiştirin, Linux büyük / küçük harf duyarlıdır).
Bazı mermilerin bir Open terminal here
hayatınızı kolaylaştırmak için, gelecekte onu arayın ve iyi kullanırsanız komut kabuğunun en iyi arkadaşınız olabileceğini unutmayın. :-D
Hepsi bu. Daha fazla yardıma ihtiyacınız olursa buraya yorum yapın.
Yardım ediyorsam soldaki yukarı oka basın; çözerseniz bu cevabı en iyi cevap olarak işaretleyin.
Linux ve Ubuntu'da iyi bir deneyim yaşayın.
‘İzin reddedildi’ hatası, yalnızca bu dosyaya erişmek için yeterli ayrıcalığınız yoksa oluşur.
İzinleri nasıl değiştirebilirim
Bunu nerede yapacağım lütfen bana bir örnek verin
Bunu yaptığımda bana şu chmod’u söylüyor: erişemiyor `geany_run_script.sh ': Böyle bir dosya veya dizin yok. Terminalden mi çalıştırmalıyım?
olası kopyası [Terminalde .sh dosyalarını nasıl çalıştırabilirim?] (command line - How do I run .sh scripts? - Ask Ubuntu )