您現在的位置是:首頁 > 網頁遊戲首頁網頁遊戲
作為程式設計師,什麼是指令碼 務必要知道
- 2021-09-03
執行指令碼是什麼意思
Javascript 是一門動態型別、面向物件的指令碼語言。
對指令碼進行一個感性的認識。就是一個跟計算機執行的文字。
理解指令碼
如果你開啟一本 JavaScript 教程,那麼很可能在第一章就看到這句話:
JavaScript 是一門動態型別、面向物件的指令碼語言。
然而很多前端工作一年都不清楚這個指令碼是什麼意思。
其實指令碼原本來自戲劇舞臺,比如下面這個指令碼:
公館一室內
王媽:(小心翼翼地)小姐,您還是得注意身子,就吃點東西吧。
雞小姐:(把碗砸在地上)不吃,我就是不吃。
(王
媽下)
指令碼主要由人物對話和舞臺提示組成。演員和道具組只需要按照指令碼說的做即可。
程式設計領域的指令碼也是類似的,計算機只要照著指令碼上說的做即可,比如下面這個指令碼:
cd ~/Desktopmkdir democd demoecho “hi” > index。htmlcd ~/Desktop
所以說,指令碼就是給計算機照著做的。這是我們對「指令碼」的一個感性認識。
Node。js 寫指令碼
上面我們寫的指令碼叫做 Bash Script(Bash指令碼)。
JS 的全稱叫做 JavaScript(Java指令碼),雖然 JS 和 Java 沒什麼關係,但是 JS 依然是一種指令碼。
我們在 Bash 命令列裡輸入 Bash 命令,也可以在 Node。js 命令列裡輸入 JS 命令
Bash 指令碼能做的事情,JS 指令碼也能做。
用 JS 切換目錄
console。log(process。cwd()) // 列印當前目錄//process。chdir(‘~/Desktop’);;// 這句話不行的,因為 JS 不認識 ~ 目錄process。chdir(“/Users/frank/Desktop”)console。log(process。cwd()) // 列印當前目錄
console。log 就相當於 echo
用 JS 指令碼建立目錄
Google nodejs create dir
let fs = require(“fs”)fs。mkdirSync(“demo”)
用 JS 指令碼建立檔案
Google nodejs create file
let fs = require(‘fs’)fs。writeFileSync(“。/index。html”, “”)
用 JS 指令碼來重寫 demo。sh
建立 ~/local/jsdemo。js,內容如下
var
fs =
require
(
‘fs’
)
var
dirName = process。argv[
2
]
// 你傳的引數是從第 2 個開始的
fs。mkdirSync(
“。/”
+ dirName)
// mkdir $1
process。chdir(
“。/”
+ dirName)
// cd $1
fs。mkdirSync(
‘css’
)
// mkdir css
fs。mkdirSync(
‘js’
)
// mkdir js
fs。writeFileSync(
“。/index。html”
,
“”
) fs。writeFileSync(
“css/style。css”
,
“”
) fs。writeFileSync(
“。/js/main。js”
,
“”
) process。exit(
0
)
(Windows 使用者跳過這一步)給 jsdemo。js 加上執行許可權 chmod +x ~/local/jsdemo。js
cd ~/Desktop
node ~/local/jsdemo。js zzz,就可以看到 zzz 目錄建立成功了
shebang
我們每次執行 ~/local/jsdemo。js 都要用 node 來執行,能不能做到不加 node 也能執行呢(也就是指定執行環境),可以,在 jsdemo。js 第一行加上這一句即可:
#!/usr/bin/env node
(以下操作在 Windows 上可能失敗,失敗了就算了)
然後你就可以直接用 ~/local/jsdemo。js zzz 了(省得輸入 node 了)。
如果你已經把 ~/local 加入了 PATH,那麼甚至可以直接輸入 jsdemo。js zzz 來執行。
如果你再把 jsdemo。js 的字尾 。js 去掉,就可以直接 jsdemo zzz 了。
注意,你每次執行前最好刪掉 zzz 目錄,以免發生衝突。
總結
我們學會了
指令碼就是給機器一行一行執行的文字
Bash 指令碼有 Bash 指令碼的語法,Node。js 指令碼有 JS 語法
不管是那種指令碼,能實現的功能都差不多,只是語法不同
Bash 指令碼的語法挺奇葩的,比如 $1 $# 等符號
不用特別去學 Bash 指令碼的用法,遇到不會的就 Google
不用特別去學 Node。js 指令碼的用法,遇到不會的就 Google
新人寫程式碼最大的問題就是「抄錯了」
多寫了一個空格
少寫了一個空格
單詞拼錯了
沒有加分號
多加了分號