因為簡單,用腳都可以寫
python perl ruby lua
??
?
?
?
(1)什么是腳本語言?
(2)為什么叫做腳本語言,而不叫做其它的名字?請您介紹一下“腳本語言”這個名字的來歷?具有什么特征的語言被稱為腳本語言?
在網上查了查,沒查著。腳本語言英文應該是script language吧。script在金山詞霸中的解釋有:A copy of a text used by a director or performer.也就是按照script進行導演或演出。用在計算機上可能就變成了:可以執行的文本。因為我知道的所有腳本文件都是文本文件格式的,而且可以執行,從這個意義上與script的含義很接近。更關鍵的是腳本語言是從英文翻譯過來的,因為外國人這么叫,所以我們也這么翻譯的吧。歷史我不知道。
我個人認為:源程序是文本格式,可以被解釋執行的語言可以算作腳本語言。如:python,perl,php,shell,awk等等,許多。不過,有一些腳本語言已經發生了變化,如python,perl已經可以編譯成中間代碼然后執行,這樣的腳本語言已經可以被稱為編譯型腳本語言。
BTW:腳本語言與解釋語言我認為還是有區別的。解釋語言是說解釋執行的語言,但執行的代碼并不一定是文本格式的。腳本語言的程序是文本文件,并且是解釋執行的。但這兩種區別也有些模糊。反正有點區別,不過你認為差不多也行,好象現在并不太細分腳本語言與解釋語言。
(3)腳本語言包含哪些語言?
python,perl,php,vbscript,javascript,shell,awk等
(4)腳本語言與一般意義上的編程語言(比如說C語言)有著什么本質上的不同?
C是編譯語言,執行文件是二進制。腳本語言是解釋執行的,執行文件是文本。
(5)腳本語言一般有什么用途?
不同的腳本語言用處與功能大不一樣。象python可以做幾乎所有C語言可以做的事情。如開發桌面程序,網絡程序,游戲程序,科學計算,繪圖等等。有些腳本語言具有擴展功能,如果有它做不到的,你完全可以使用C來開發相應的模塊,然后在腳本語言中使用。
(6)好象有什么利用腳本語言編寫的病毒程序,這種病毒程序(如果有的話)和一般病毒程序有什么不同?
我想應該是執行的層次不同。一般的二進制病毒在操作系統一級就可以執行,比較底層。但腳本語言的執行必須有一個解釋器,比較高層。這種病毒多例用了解釋器的漏洞來實現病毒功能。如Word的宏病毒,一些蠕蟲病毒,網頁病毒等。
(7)腳本語言的用途是不是比較狹隘(與一般的編程語言相比)?
很廣,前面也談到了。如果你去sf.net上看一看腳語言相關的項目(如python,perl),你會發現它們幾乎與C/C++/Java一樣,涉及到方方面面的編程領域。
上面只是我個人的理解,可能有不對的地方。
??
?
?
?
腳本與解釋有時是很模糊,其實沒有必要搞得這么清楚了,當然如果你有興趣去搞。在這里我們可以干脆將腳本與解釋混為一談。解釋是第一位的,至于是不是文本格式,是否會編譯成字節碼倒是次要的。不這,我所接觸的腳本語言(我認為是)只需要有文本格式就可以運行。象Python有中間代碼,不過這一過程完全是自動的,你不用去管它。因此從最基本的運行條件來說,我認為腳本語言似乎文件格式要求是文本的。象java,其實是有一個虛擬機在運行,它也是解釋執行的,那它算不算腳本語言呢,我想應該不算吧。因為,它的運行是先編譯成字節碼,再去運行。如果編譯過程全自動了,算嗎?這許就可以算了吧。
不過,我們完全可以不去關心這些個案,只考慮通常的情況就行了。因此,我個人認為:腳本語言:一、解釋執行 二、執行文件為文本即可
至于是不是嵌入的,那都是后來的事情。象shell應該是最早的腳本語言了吧,它可不是嵌入的。而且許多腳本語言根本就是獨立可以運行的,當然也可以嵌入。也就是說嵌入是不一定的。
?
?
?
?
我認為腳本語言一個最特別的地方就是必要有執行平臺(這個平臺是構架在系統平臺上的二進制運行程序)腳本語言和一般語言的差別在于一般語言的編譯和解釋是平臺相關的,而腳本語言可以在文本執行時做到平臺無關(只要該平臺具有相應的功能一致的執行平臺)。
?
最根本的區別:
腳本最終執行時并不是二進制文件,僅僅是(依賴于平臺的)解釋結果。
?
??
??
腳本指的是軟件運行時的指令
計算機就是按照這個軟件的腳本來運行的。
??
其實我一直也對這個問題很疑惑。現在就我自己的理解跟你分享一下:
1、首先我們要知道腳本的英文是script。在英文中,script的含義是“劇本”的意思,劇本是拍一個電影最基礎的東西。當你查一個簡單的英漢詞典的時候你可能會發現script的翻譯還是只有“腳本”一種,你還是不理解。但是你如果你查的是《21世紀大英漢詞典》的時候,你會發現script有多種翻譯,包括腳本、劇本、稿本等意思。
2、猜測當時第一個把script翻譯成“腳本”的翻譯人員是有一定文學功底,因為我們國家古代的那些喜劇演員就把他們演出時的“劇本”成為“腳本”,“腳”這個字充分反映了腳本在表演行業的基礎地位。
3、腳本語言是編寫網頁經常用的一種語言,現在的網頁做的越來越生動活潑,有豐富網頁的表現,如動畫、聲音等,這些原來都必須是在演出中才能看到的。
特別注意:所以這種編程語言就像電影中的腳本(即劇本)一樣,劇本讓演出更加精彩,這樣語言讓網頁變的更加精彩。這種語言在網頁中的地位就像“腳本”在演出中的地位一樣,所以稱其為“腳本語言。”
?
?
?
?
?
?
腳本script是使用一種特定的描述性語言,依據一定的格式編寫的可執行文件,又稱作宏或批處理文件。腳本通常可以由應用程序臨時調用并執行。各類腳本目前被廣泛地應用于網頁設計中,因為腳本不僅可以減小網頁的規模和提高網頁瀏覽速度,而且可以豐富網頁的表現,如動畫、聲音等。舉個最常見的例子,當我們點擊網頁上的E-mail地址時能自動調用Outlook Express或Foxmail這類郵件軟件,就是通過腳本功能來實現的。也正因為腳本的這些特點,往往被一些別有用心的人所利用。例如在腳本中加入一些破壞計算機系統的命令,這樣當用戶瀏覽網頁時,一旦調用這類腳本,便會使用戶的系統受到攻擊。所以用戶應根據對所訪問網頁的信任程度選擇安全等級,特別是對于那些本身內容就非法的網頁,更不要輕易允許使用腳本。通過“安全設置”對話框,選擇“腳本”選項下的各種設置就可以輕松實現對腳本的禁用和啟用。
解釋二
動態程序一般有兩種實現方式,一是二進制方式,一是腳本方式。
二進制方式是先將我們編寫的程序進行編譯,變成機器可識別的指令代碼(如.exe文件),然后再執行。這種編譯好的程序我們只能執行、使用,卻看不到他的程序內容。
腳本簡單地說就是一條條的文字命令,這些文字命令是我們可以看到的(如可以用記事本打開查看、編輯),腳本程序在執行時,是由系統的一個解釋器,將其一條條的翻譯成機器可識別的指令,并按程序順序執行。因為腳本在執行時多了一道翻譯的過程,所以它比二進制程序執行效率要稍低一些。
按目前的服務規則,虛擬主機網站只能采用腳本語言來實現
動畫術語名詞解釋
?
?
腳本:寫劇本的人,也叫故事構成。
腳本英文為Script。實際上腳本就是程序,一般都是有應用程序提供的編程語言。應用程序包括瀏覽器(JavaScript、VBScript)、多媒體創作工具,應用程序的宏和創作系統的批處理語言也可以歸入腳本之類。腳本同我們平時使用的VB、C語言的區別主要是:
1、腳本語法比較簡單,比較容易掌握;
2、腳本與應用程序密切相關,所以包括相對應用程序自身的功能;
3、腳本一般不具備通用性,所能處理的問題范圍有限。
腳本,英文名為Script,簡單地說,腳本就是指通過記事本程序或其它文本編輯器(如Windows Script Editor,EditPlus等)創建,并保存為特定擴展名(如.reg , .vbs, .js, .inf等)的文件,對于注冊表腳本文件就是利用特定的格式編輯的.reg文件;對于VBScript腳本編程語言來說,腳本文件擴展名就是.vbs;對于JScript腳本編程語言來說,腳本文件擴展名就是.js;另外,.wsf格式是Microsoft定義的一種腳本文件格式,即Window Script File.
具體地說,腳本通過利用應用程序或工具的規則和語法來表達指令,以控制應用程序(包括注冊表程序)中各種元素的反應,也可以由簡單的控制結構(例如循環語句和If/Then語句)組成,這些應用程序或工具包括網頁瀏覽器(支持VBScript,Jscript),多媒體制作工具,應用程序的宏(比如Office的宏)以及我們熟悉的注冊表工具(regedit.exe)等.操作系統中的批處理也可以歸入腳本之列,批處理程序也經常由Windows環境中的"腳本"替換,所以又稱腳本是"Windows時代的批處理".
腳本的作用在每一種應用程序中起的作用都是不一樣的,比如在網頁中可以實現各種動態效果,各種特效處理,實現各種HTML不能實現的功能.而在Office組件中,我們會經常看到"宏"這個工具,它其實就是一系列命令和指令可以實現任務執行的自動化.