Komut dosyası dili

Komut dosyası veya komut dosyası dili, komut dosyalarını destekleyen bir programlama dilidir. Komut dosyaları genellikle bir kişi tarafından teker teker yapılabilecek adımları gerçekleştiren kısa bilgisayar programlarıdır. Bu, bir işi daha kolay ve daha güvenilir hale getirmek için otomatikleştirir. Bir betik dili genellikle daha basit bir dildir ve öğrenilmesi diğer dillere göre daha kolaydır, ancak yine de birçok şey yapabilir.

Komut dosyaları, bir web tarayıcısı veya Microsoft Excel gibi başka bir programın içinde çalışabilir. Ayrıca bir komut satırı arayüzünden çalışan ve işletim sistemine (OS) çağrı yapan bir kabuk da olabilirler. Kabuk etkileşimli olarak kabul edilir - kullanıcı ne yazacağını seçebilir ve kabuk komuta yanıt verir. Bunlar ana bilgisayarlar ve sunuculardaki işleri kontrol etmek için kullanılabilir.

Bazı insanlar bir betik dilinin belirli bir kullanıma bağlı olması gerektiğini söyler. Diğerleri daha geniş bir tanım kullanır ve derlenen değil yorumlanan genel amaçlı programlama dillerini içerir. Genel amaçlı, farklı şeyler için birçok şekilde kullanılabileceği anlamına gelir. Bazı genel amaçlı dillerin (Java gibi) komut dosyası yazılabilen varyasyonları vardır (Javascript). Neyin betik dili olduğu ya da olmadığı konusunda belirli bir kural yoktur.

Örnekler

Betik dillerinin bazı yaygın örnekleri:

  • Unix veya Unix benzeri işletim sistemleri için kontrol dilleri olarak Bash ve C kabuğu
  • Başka bir uygulamanın içinde çalışan komut dosyalarına uzantı dili denir. Web tarayıcıları ECMAScript (JavaScript) veya XUL dahil olmak üzere çeşitli komut dosyalarına izin verir. Örneğin, Google ana sayfası JavaScript kullanır. Visual Basic for Applications Microsoft Office içinde kullanılır. Lua, özellikle bir uzantı dili olarak yapılmış bir dildir ve birçok uygulama içinde kullanılabilir.
  • Komut dosyası uzantılarına sahip oyunlar arasında Second Life sanal dünyası ve Trainz Demiryolu simülatörleri bulunmaktadır. Wesnoth gibi diğer oyunlarda, oynanan gerçek oyunların çeşitliliği diğer kullanıcılar tarafından yazılan senaryolardır.
  • Metin işleme dilleri sed ve AWK
  • Genel amaçlı: Perl, Tcl ve Python birçok farklı şey için kullanılabilen yüksek seviyeli programlama dilleridir (makine kodundan ziyade insan diline daha yakın). Bu dillerden bazıları ilk olarak belirli bir kullanım için yapılmış ve daha sonra genel amaçlı dillere dönüştürülmüştür.

Özellikler

Çoğu komut dosyası dili öğrenmesi kolay olacak şekilde tasarlanmıştır. Genellikle kaynak kodu içeren kısa dosyalar olabilirler ya da bir komut satırı arayüzünde her seferinde bir komut girilebilir, bu da bir okuma-çözümleme-yazdırma döngüsüne sahiptir (REPL, dil kabuğu). Bu genellikle basit bir dizi komut anlamına gelir. Fonksiyonlar ya da bir main olmayabilir, sadece baştan sona çalışır. Bir şey çalışmazsa, programcı hızlı değişiklikler yapabilir ve tekrar çalıştırabilir. Bu, bir fikrin çalışıp çalışmadığını görmek için hızlı bir prototip yapmak için bir komut dosyası dilini iyi yapar.

Örneğin, uzun söz dizimi ve hangi sınıfların hangi dosyalarda bulunduğuna ilişkin kuralları nedeniyle ve Java bir REPL'de etkileşimli olarak çalıştırılamadığı için çoğu kişi Java'yı bir betik dili olarak adlandırmaz. Kaynak kodu içeren dosyalara ihtiyaç duyar ve bunlar yalnızca bir ana uygulama veya uygulama başlatıcı tarafından kullanılması gereken tanımları içerebilir. (Java, JavaScript ile aynı şey değildir).

Ancak Python seçeneklere izin verir - fonksiyonlar bir dosyaya konulabilir, fonksiyonlar olmadan çalıştırılabilir ve zorunlu programlama stili kullanılabilir veya hatta etkileşimli olarak kullanılabilir (her seferinde bir satır yazın ve çalıştırın).

print ("Merhaba Dünya")

Bu tek satırlık Python kodu "Merhaba Dünya" yazdırır; main() fonksiyonuna veya başka bir şeye gerek yoktur.

Bir komut dosyası dili genellikle kaynak koddan veya bayt kodundan yorumlanır. Ancak, bilgisayarın anlayabilmesi için bir şeyin betiği çalıştırması (yorumlaması) gerekir. Bu bir uygulama ya da işletim sistemindeki bir şeydir. Bu genellikle derlenmiş bir dilde yazılır ve makine kodu biçiminde dağıtılır (insanlar için bir anlam ifade etmeyen bir yürütülebilir dosya olarak).

Komut dosyası dilleri, bir programı kullanan kişiler tarafından kullanılmak üzere tasarlanabilir - son kullanıcı geliştirme. Diğer zamanlarda programcılar tarafından kendi kullanımları için oluşturulabilirler. Kodlama dilleri genellikle bir bilgi gizleme biçimi olan soyutlamayı kullanır. Bu, kullanıcıların değişken türleri, veri depolama ve bellek yönetiminin ayrıntılarını bilmesine gerek olmadığı anlamına gelir.

Komut dosyaları genellikle bunları uygulayan kişi tarafından yapılır veya değiştirilir, ancak bazıları paylaşılır veya başkalarına satılır. Örneğin, oyunların büyük bölümleri bir komut dosyası dilinde yazıldığında. Bazen bir komut dosyası başkaları kullanmadan önce derlenebilir. Derlendikten sonra daha hızlı çalışır ve çalıştırmak için başka bir uygulamaya ihtiyaç duymaz. Bu da son kullanıcıların kodu değiştirmesini engeller.

Tarih

İlk ana bilgisayarlar (1950'lerde) etkileşimli değildi, ancak toplu iş dosyalarında depolanan komut dosyalarını kullanıyordu. IBM'in İş Kontrol Dili (JCL), toplu işlemeyi kontrol etmek için kullanılan komut dosyası dilinin yaygın bir örneğidir.

İlk etkileşimli kabuklar 1960'larda ilk zaman paylaşımlı sistemlerin uzaktan çalıştırılmasına yardımcı olmak için yapılmıştır. Bunlar, bir bilgisayar programı olan kabuk içinde bilgisayar programlarını çalıştırabilen kabuk komut dosyalarını kullandı. Calvin Mooers TRAC dilinde genellikle komut ikamesini icat etmekle tanınır. Bu, komutların betiği değiştirmesini sağlar (kendi kendini değiştiren kod). Multics bu aktif fonksiyonları çağırır. Louis Pouzin 1964 civarında CTSS için RUNCOM adında komut betikleri için erken bir işlemci yazmıştır. MIT'den Stuart Madnick 1966'da IBM'in CP/CMS'si için bir komut dosyası dili yazdı. Bu işlemciye başlangıçta COMMAND adını verdi, daha sonra EXEC adını aldı. Multics, RUNCOM olarak da adlandırılan CTSS RUNCOM'un bir dalını içeriyordu. EXEC sonunda EXEC 2 ve REXX ile değiştirildi.

Tcl ve Lua gibi diller en başından beri herhangi bir uygulamaya yerleştirilebilecek genel amaçlı betik dilleri olarak tasarlanmıştır. Visual Basic for Applications (VBA) gibi diğer diller de aynı şeyi yapabiliyordu, ancak yalnızca belirli uygulamalarla çalışmaları gerekiyordu. Her uygulama için yeni bir dil oluşturmak yerine genel amaçlı bir komut dosyası dili kullanmak genellikle hem uygulamayı yazan kişi hem de komut dosyalarını yazan kullanıcı için işleri kolaylaştırır.

Betik dili türleri

Tutkal dilleri

Komut dosyası oluşturma bazen farklı uygulamaları birbirine bağlamak için kullanılır. Buna tutkal kodu denir ve sadece bu amaç için yapılmış bir dil tutkal dilidir. Boru hatları ve kabuk komut dosyası, tutkal dillerinin yaygın örnekleridir. Ancak bir betik dosyasında çok fazla mantık yazılıyorsa, bunu "tutkal" olarak değil, sadece başka bir yazılım uygulaması olarak düşünmek daha iyidir.

Tutkal dilleri özellikle yazma ve bakım için kullanışlıdır:

  • bir komut kabuğu için özel komutlar;
  • Derlenmiş bir dilde daha iyi uygulananlara göre daha küçük programlar;
  • Bir elektronik tablo, veri tabanı, derleyici vb. gibi bir uygulamayı çalıştırmadan önce veya sonra bazı otomatik işler yapan "sarmalayıcı" programlar;
  • sık sık değişebilen senaryolar;

Tutkal dili örnekleri:

  • AppleScript
  • awk
  • JCL
  • Lua
  • m4
  • Perl
  • Unix Kabuk betikleri (ksh, csh, bash, sh ve diğerleri)
  • VBScript
  • İş Akış Dili
  • Windows PowerShell
  • XSLT

Programlanabilir hesap makineleri gibi cihazların kendi tutkal dilleri de olabilir. Örneğin, Texas Instruments TI-92, fabrika varsayılanı olarak bir komut dosyası dili ile programlanabilir. TI-NSpire hesap makinesi Lua dilini anlar. Diğerleri bir tür Basic dilini ya da belki Lisp veya başka bir şeyi anlar.

İş kontrol dilleri ve kabukları

Bu grup, IBM'in JCL'sinden başlayarak sistem programlarının davranışını başlatmak ve kontrol etmekle ilgili olan iş kontrolünün otomasyonundan gelmiştir. Bu dillerin yorumlayıcılarının çoğu, Unix kabuğu veya MS-DOS COMMAND.COM gibi komut satırı yorumlayıcıları olarak da çalışır. AppleScript gibi diğerleri, komut dosyaları oluşturmak için İngilizce benzeri komutların kullanımını sunar.

GUI komut dosyası oluşturma

Grafiksel kullanıcı arayüzleri oluştururken, bunu test etmenin bir yolu gereklidir. Grafik pencereleri, menüleri, düğmeleri ve benzerlerini tıpkı bir insan kullanıcının yapacağı gibi kontrol etmek için özel betik dilleri yapılmıştır. Bunlar çoğu zaman bir kişinin yaptıklarını (fareyi hareket ettirmek, klavyeye tıklamak ya da yazmak) aynen kopyalamak için kullanılabilir. Kopyalanan ve hatırlanan bu eylem veya eylemler kümesine makro denir.

Uygulamaya özel diller

Birçok büyük uygulama, sadece o uygulama için oluşturulmuş bir komut dosyası dili içerir. Uygulama bir oyun veya bir iş programı olabilir. Bu tür bir dil tek bir uygulama için yapılmıştır. Genel amaçlı bir dil gibi görünürler (örneğin QuakeC, C'den sonra modellenmiştir), onları ayıran özel özelliklere sahiptirler.

Genişletilebilir/eklenebilir diller

Bu, bir uygulamayı kontrol ettiği için uygulamaya özel bir komut dosyası dili gibidir, ancak dil birçok uygulamada kullanılabilir.

JavaScript, web tarayıcıları içinde komut dosyası yazmak için bir dil olarak başladı; ancak artık genel amaçlı gömülebilir bir dildir. Örneğin Adobe ürünlerinde de kullanılmaktadır.

Bazı diller, genellikle daha fazla şey yapma yeteneği ekledikçe, zaman içinde bir türden diğerine geçer.

Sorular ve Yanıtlar

S: Betik dili nedir?


C: Komut dosyası veya komut dosyası dili, komut dosyalarını destekleyen bir programlama dilidir.

S: Komut dosyaları nedir?


C: Komut dosyaları genellikle bir kişi tarafından teker teker yapılabilecek adımları gerçekleştiren kısa bilgisayar programlarıdır.

S: Komut dosyaları neden yararlıdır?


C: Bir işi otomatikleştirerek daha kolay ve güvenilir hale getirir.

S: Betik dilini öğrenmek zor mudur?


C: Bir betik dili genellikle daha basit bir dildir ve diğer dillere göre öğrenmesi daha kolaydır, ancak yine de birçok şey yapabilir.

S: Betikler nerede çalışabilir?


C: Komut dosyaları bir web tarayıcısı veya Microsoft Excel gibi başka bir programın içinde çalışabilir.

S: Betik dillerinde kabuk nedir ve nasıl kullanılır?


C: Komut satırı arayüzünden çalışan ve işletim sistemine (OS) çağrı yapan bir kabuk da olabilirler. Kabuk etkileşimli olarak kabul edilir - kullanıcı ne yazacağını seçebilir ve kabuk komuta yanıt verir. Bunlar ana bilgisayarlar ve sunuculardaki işleri kontrol etmek için kullanılabilir.

S: Genel amaçlı bir dil bir betik dili olabilir mi?


C: Bazı insanlar bir betik dilinin belirli bir kullanıma bağlı olması gerektiğini söyler. Diğerleri daha geniş bir tanım kullanır ve derlenen değil yorumlanan genel amaçlı programlama dillerini içerir. Genel amaçlı, farklı şeyler için birçok şekilde kullanılabileceği anlamına gelir. Bazı genel amaçlı dillerin (Java gibi) komut dosyası yazılabilen varyasyonları vardır. Neyin betik dili olduğu ya da olmadığı konusunda belirli bir kural yoktur.

AlegsaOnline.com - 2020 / 2023 - License CC3