腳本

2021-02-13 web前端開發指南

講故事:

她咬下嘴唇,默默地搓著衣角。辦公室已經空無一人,我不知道她在思索著什麼。下班後的寒冬臘月,刺骨的北風中空蕩的街區。

半晌,她悄悄問了十萬個為什麼:

程式設計師:「介個是JS腳本運行出錯的」,「介個好計算,跑個腳本就OK」,「介個bug要在雲端腳本進行修復」;測試大妹子操著東北方言:「可不咋地~效率有提升啊現在,俺們都是用自動化腳本解決問題滴」;數據分析師:「這條數據,需要重寫個腳本,Hadoop再跑三天」。「腳本」到底是什麼呢,它和「腳氣」究竟是什麼關係啊?

答:腳本,是使用一種特定的描述性語言,依據一定的格式編寫的可執行文件。

正當她陷入沉思之時,我又開始了一個美好的裝逼之旅。

「腳本」一詞其實令很多人懵逼。「很多人」這個概念包括了一部分程序猿在內。他們可能每天都在寫腳本,不過似乎並不十分清楚它的來源與為啥這麼叫的,就像現在很普遍的都把「網誌」叫做了「博客」,可你似乎並不清楚博客原本的含義。或者說,年會了你老闆天天喊要拍「VCR」,可他根本不知道「VCR」的本來意義。

腳本,英文:Script,咱們先看看它的釋義,作為名詞來件,是劇本的意思,作為動詞的話,那就是寫劇本的意思,亦做戲劇中底本的意思,譯做「腳本」似乎並不好理解,那理解成話劇、戲劇等的「劇本」就是OK。


對應在現實當中,提起劇本閃現腦的是一摞已經被翻得起了黑邊的A4紙,上面寫滿了密密麻麻的文字(都是我們能讀懂的哦)。劇本描述了這部劇的整個流程,出場、順序、包袱、臺詞、旁白、舞臺效果等等都囊括其中,同時按照劇本所編排的節奏與順序執行,一部劇的演出效果,應該等同於劇本描述。

類似按照劇本完成任務的工作或思維方式充斥整個生活,KFC負責清理衛生間的員工是以1小時為單位,籤到並且打掃衛生的。CCTV春晚的主持人是按照提前設計好的臺詞去主持節目的。富二代王思聰想當網紅,同樣也是有劇本的。

龐雜的生活場景,在高度抽象之後,被「抄襲」到計算機中。

腳本就是劇本

腳本是普通的文本文件(和txt類似)

腳本是批處理文件

腳本導演了一個序列事件的發生

腳本大幅提升一個例行任務的效率

在win系列作業系統當中常見擴展名為.bat的批處理文件,雙擊打開,出現一個黑底的窗口,同時若干白色文字迸發而出,這是批處理文件,也就是腳本。

cos寫了個很簡單的Windows作業系統下的批處理文件,用於實現列印 Disk C ,並且輸出C盤的目錄,最後停止在命令行界面,代碼如下:

雙擊批處理運行如下:


現在呈現的內容是這個文件執行了兩個步驟所得的結果:

1.列印「Disk C」;

2.調用 dir 命令輸出C盤目錄。

發現沒有,如果手工操作,要實現這兩個步驟至少要輸入兩次,現在用批處理,效率大幅提升有沒有? 哦,說明一點,不可以用剛剛這個例子來計算所得收益,你自行腦補,如果是一個每天都要操作,並且有數千步驟的操作流程,你看這樣是不是高效多了……

作為一個最簡單的腳本,是Windows系列作業系統直接支持滴。而JavaScript腳本則是瀏覽器支持的。同時寫JS的語法和Windows批處理命令的語法規則是不相同的,不相同的寫法,運行在不同的環境中。腳本的運行環境被稱為「解釋器」,就說怎麼理解這段純文本編寫的腳本。

假設你去了泰國,腳本是「薩瓦迪卡」,對應的解釋器就是泰語。

要是你到了韓國,腳本寫的是「阿尼阿塞呦」,對應的解釋器就是韓語。

每種腳本都對應著一種解釋器,JavaScript最流行的解釋器是Chrome V8引擎(裝逼可用。我在文末解釋下)。

假設腳本語言是「錘子」,那在陝西和其他地區的解釋器當中的意義是不一樣的,這種只適用於漢語,畢竟漢語由於地域劃分,解釋器會很多的。

現在哪些腳本語言比較流行?

PS: Lua(這個不要讀成「擼啊」,標準讀音是「擼哇」,好像讀起來就感覺沒那麼下流了是不是/壞笑。)

腳本語言有很多種,也有相應配套的解釋器。每種有其特殊的使用場景或擅長場景,不同場景要選用不同的工具。在一些交流群經常看到很多程序猿裝逼:「我只用Python」。我告訴你哈,這個是因為他就只會Python。

下文裝逼可用,看不看隨你。

Chrome V8引擎:

V8 是一個全新的Google的開源JavaScript引擎,它在設計之初就以高效地執行大型的JavaScript應用程式為目的。

在一些性能測試中,V8 比 Internet Explorer 的 JScript 、Firefox(IE9使用JS引擎為:Chakra引擎)中的 SpiderMonkey (火狐4.0後用的JS引擎為JaegerMonkey) 以及 Safari 中的JavaScriptCore 要快上數倍。
V8 採用 C++ 編寫,可在谷歌瀏覽器中使用。
V8 根據 ECMA-262 第三版中的說明使用 ECMAScript,並在使用 IA-32或 ARM 處理器的 Windows XP 和 Vista、Mac OS X 10.5  (Leopard) 以及 Linux 系統中運行。
V8 可以獨立運行,也可以嵌入任何C++應用程式中。
V8 性能的3個關鍵方面:①快速屬性訪問;②動態生成機器碼;③高效的垃圾回收;

在執行垃圾回收的時候會中斷程序的執行。大部分情況下,每個垃圾收集周期只處理整個對象堆的一部分,這讓程序中斷造成的影響得以減輕。
總是知道內存中所有的對象和指針所在的位置,這避免了非 accurate 的垃圾收集器中普遍存在的由於錯誤地把對象當作指針而造成的內存溢出的情況。

相關焦點

  • 引流腳本,APP引流腳本,引流腳本是什麼意思?
    2017年引流腳本很空出世多功能的引流腳本自動化操作多個APP平臺的引流軟體,從出世以來顛覆網際網路,迅速火爆了引流市場。其中極速引流腳本脫穎而出實用有效,作為缺乏流量的你,絕對是不二之選。相信這個時候肯定就會有人這麼想了,既然可以這麼方便,那引流的效果好嗎?
  • 腳本的作用
    腳本是一種根據格式編寫的語言,又成為可擴展性語言,有時被當成程式語言,用來編寫可執行文件。但是,腳本語言內涵豐富,並非應用在計算機領域。說評書的、唱戲的都需要腳本,演電影的也需要腳本,警方審問犯人的時候需要腳本,甚至騙子們也需要腳本。那麼,腳本到底起了怎樣的作用?
  • 新手主播如何撰寫腳本?直播腳本是什麼?為什麼一定要有腳本?
    今天分享內容是【直播腳本是什麼?為什麼要有腳本?腳本怎麼撰寫?】直播腳本是什麼?前幾天出了一期小視頻講到直播腳本後,有一位朋友給我留言說:「以為寫程序的腳本直播用腳本兩字聽起來很變扭,能不能換個詞叫遊戲規則的劇本」。"腳本"這詞用得最多的卻實是在程序編程上,但如今也被用到了表演戲劇和拍攝電影還有直播上了。
  • 什麼是腳本語言,你用過哪些腳本語言
    早期的腳本語言經常被稱為批處理語言或工作控制語言。一個腳本通常是解釋運行而非編譯。雖然許多腳本語言都超越了計算機簡單任務自動化的領域,成熟到可以編寫精巧的程序,但仍然還是被稱為腳本。幾乎所有計算機系統的各個層次都有一種腳本語言。包括作業系統層,如計算機遊戲,網絡應用程式,文字處理文檔,網絡軟體等。在許多方面,高級程式語言和腳本語言之間互相交叉,二者之間沒有明確的界限。
  • LoadRunner腳本開發
    根據改進腳本方法和腳本語言規則來修改腳本。   改進腳本的方法:   1)為每一個GUI的screen添加事務語句來獲得事務時間。   2)添加顯示數據來幫助調試。   3)添加驗證點來驗證是否期望的文本或者圖片在每個腳本執行後顯示。
  • 什麼是腳本錯誤? 網頁出現腳本錯誤解決辦法分享
    什麼是腳本錯誤? 網頁出現腳本錯誤解決辦法分享時間:2018-03-27 07:49   來源:三聯   責任編輯:沫朵 川北在線核心提示:原標題:什麼是腳本錯誤?網頁出現腳本錯誤解決辦法分享 當我們使用電腦瀏覽網頁的時候經常會出現腳本錯誤的界面對話框,一般情況下不予理會也是可以的,但是個別的會有影響還關不掉我們就得找出原因來解決了,下面小編就針對腳本錯誤給大家帶來解決方法,希望能夠幫   原標題:什麼是腳本錯誤?
  • Linux shell腳本編程入門系列一:認識shell腳本
    1、什麼是shell腳本將多個shell命令按語法組合在一起,並保存在文本文件中即得到我們所說的shell腳本(shell script)。shell腳本可以方便地與系統交互,完成系統管理以及批處理任務。shell處於作業系統與應用之間,起到橋梁的作用。
  • 什麼是影視腳本,影視腳本製作有什麼注意事項
    掌握了基本信息框架之後,進行實地的考察和採訪,在此基礎上,創作作品提綱,也就是俗稱的提案供對方討論和審核,通過之後,才能進行正式的腳本創作。分鏡頭腳本即是將宣傳片創意思想的文字表達,是創意概念的視覺呈現,也是企業宣傳片拍攝進行視覺化的第一步,拍攝方案、後期製作皆以此出發。
  • 新手主播如何撰寫腳本 為什麼一定要有腳本
    "腳本"這詞用得最多的是在程序編程上,但如今也被用到了表演戲劇和拍攝電影還有直播上了。有人問新手主播如何撰寫腳本?為什麼一定要有腳本?今天就來給大家詳細解答一下。 "腳本"這詞用得最多的是在程序編程上,但如今也被用到了表演戲劇和拍攝電影還有直播上了。有人問新手主播如何撰寫腳本?
  • jmeter錄製腳本
    看師資,看課程看實戰,看就業選擇軟體測試,選擇松勤教育對大多數剛開始接觸性能測試的人來說,代碼功力可能不是太好,我們可以通過工具,錄製腳本來進行測試,以達到我們的目的一般來講,錄製腳本有兩種方法一、利用badboy進行腳本錄製1、下載安裝
  • 舊文|什麼是「腳本語言」
    什麼是腳本語言2013 年 03 月 29 日很多人都會用一些「腳本語言」(scripting language),卻很少有人真正的知道到底什麼是腳本語言。很多人用 shell 寫一些「腳本」來完成日常的任務,用 Perl 或者 sed 來處理一些文本文件,很多公司用「腳本」來跑它們的「build」(叫做 build script)。
  • 又一波JSBox 腳本合輯推薦
    我們會定期整理 JSBox 上面有趣、有用的腳本,以供用戶直接使用,這是系列文章的第二篇,第一篇可以在這裡找到:不會也代碼也能用jsbox,我們為你整理了這些實用腳本。IPA 安裝器作者:Axel如果你有合法籤名的 IPA 文件,這個腳本可以讓你無需電腦即可安裝,請注意這個腳本不能幫你繞過籤名限制,僅僅是一個方便在手機上安裝 IPA 的工具。
  • 西瓜視頻分鏡頭腳本怎麼寫?分鏡頭腳本概念介紹
    想要在西瓜視頻發布好看、優質的視頻,在拍攝前做好準備工作,寫好分鏡頭腳本能夠有效地提高拍攝效率和拍攝質量 。在寫腳本的時候,其實我們就把視頻的框架和拍攝的流程都梳理了一遍,熟練以後甚至可以把劇本以影像的形式在腦海裡放映一遍,這樣在拍攝的時候往往能事半功倍,避免漏拍、錯拍的情況。以下是關於西瓜視頻分鏡頭腳本的概念的詳細介紹。
  • MLSBS v0.21RC,Linux 一鍵運維腳本(新增腳本加密)
    「MLSBS」的目的就是把我日常在linux下的工作通過腳本整合到一個項目中,需要的時候幾個點擊就可以完成任務了。(其實,寫這腳本的最初原因是,我有一些搞開發朋友在某些IDC提供的虛擬服務上部署他們的應用,有時會叫我幫忙初始化環境,所以寫了這個項目提供給他們使用)由於我一個人時間有限,將以往的運維腳本整合的進度有點慢。
  • AE腳本:人像磨皮祛痘美白潤膚美顏腳本 + 使用教程
    人像磨皮祛痘美白潤膚美顏AE腳本 Skin Retouch v1.0.002 + 使用教程 SkinRetouch是一款人像磨皮祛痘美白潤膚美顏腳本。
  • IC Layout 腳本分享
    由論壇網友:okfunny 等分享在EETOP Analog Layout 板塊,現摘錄其中部分腳本分享給大家:腳本#1:名字:layout_get_hlist.sh    語言:shell功能:從cdl網表當中抽取hcell list內容:#!
  • 短視頻腳本怎麼寫?3分鐘教你寫出高質量腳本
    對於鏡頭的設計,利用的就是鏡頭腳本。問題一:什麼是腳本?先直接給大家看一個之前團隊的一個腳本模型!!!包括參與視頻拍攝、剪輯的人員比如攝影師、演員、服化道準備、剪輯師等,他們的一切行為和動作都是服從於腳本的。除此之外還包括 什麼時間、地點、畫面中出現什麼,運用什麼樣的鏡頭,都是根據腳本來進行的。
  • 短視頻小白如何寫腳本,編寫拍攝腳本的步驟
    腳本是製作短小故事視頻的強大工具,但它們也嚇跑了許多準備拍攝短小故事視頻的創作者。其實,對於短視頻小白來說,寫劇本並不難用,企鵝的眼睛要為大家總結製作短片的「三個步驟」。在確定了需要執行的細節後,考慮使用哪種鏡頭來呈現它,然後編寫一個非常具體的快照腳本。結語對於短視頻創作團隊來說,腳本是提高效率,保證主題,節省溝通成本的重要工具。天海傳媒抓住短視頻拍攝製作,歡迎諮詢。創作腳本則要先明確主題,再一步步細化,直至形成能保證視頻順利拍攝的詳細腳本。
  • 如何創作拍攝腳本
    提前準備好腳本,能幫我們理清拍攝思路,拍攝起來事半功倍。本期S君給大家分享怎樣創作拍攝腳本。 怎樣創作拍攝腳本 在創作拍攝腳本時可以先做一個拍攝計劃。 首先說一下不需要文案的拍攝。
  • 美食直播腳本怎麼寫?北京開學教育直播腳本設計模板
    一、美食直播腳本公式在研究了TOP100美食主播的內容後,我們將其中的共性抽離出來,得出一個講明直接的美食直播腳本爆火公式:爆款直播腳本=多元渠道引流+高性價比好貨+帶貨人設建構(1)核心為「貨」直播時,我們需制定一份清晰的、詳細、可執行的直播腳本(plan A),並且還要有應對各種突發狀況的一套方案(plan B),是一場直播順暢並取得效果的有力保障。