Teknik olarak kesinlikle dosya uzantıları için "iyi uygulamaların" bulunmadığını söyleyebilirim: Unix / Linux / * BSD dosya sistemleri uzantıları kendi başlarına desteklemiyor. Bir uzantı olarak adlandırdığınız şey yalnızca tek bir dosya adının sonekidir. Bu, inode-moral eşdeğerinde özel bir noktanın bir uzantı için ayrıldığı VM / CMS, VMS, MS-DOS ve Windows dosya sistemlerinden ve işletim sistemlerinden farklıdır.
Şimdi o küçük rant bitti, sanırım bir kabuk betiği dosya adına ".sh" veya ".ksh" veya ".bash" sonekini koymak biraz saçma. Bir program bir programdır: Neyin gerçekleştirileceğini ayırt etmenin faydası yoktur. Unix, linux veya çekirdeğin bir dosya teriminden dolayı bazı dosyalarda tercüman çağırmaya karar vermesine neden olan bir şey yoktur. Bunların tümü, #!
satırın başında ya da dosyanın başında bulunan "sihirli sayı" bayt dizisi tarafından yapılır . Aslında, "uzantı" adlı bir dosya adına göre neyin yürütüleceğine karar vermek, Windows'u bir malware mıknatısı yapan faktörlerden biridir. Kaç tane Windows kötü amaçlı yazılım dolandırıcılığının "something.jpg.exe" adlı bir dosya içerdiğine bakın - varsayılan olarak daha yeni Windows ".exe" uzantısını göstermez ve bir kullanıcıyı sadece "çift tıklamaya teşvik eder"
İleriye dönük bir komut olarak düşünebileceğiniz şey, yine de genellikle bir kabuk betiğidir. Bazen cc
bir sh betiği olmuştur, firefox
bir sh betiği, startx
bir sh betiğidir. Bir betiği ".sh" ekiyle işaretlemenin bilişsel veya örgütsel bir yararı olduğuna inanmıyorum.
bash script.sh
(veyash
elbette) çalıştırması için bir ipucu olabilir .