關(guān)于Javascript我們一定都能看到這樣一句話:
JS是一門動(dòng)態(tài)類型匣掸,面向?qū)ο蟮哪_本語言
那么涝登,什么是腳本呢雄家?這是我們最想知道的事情了。
用最通俗的話來講胀滚,我們可以簡(jiǎn)單理解為:腳本就是劇本趟济,指揮著演員們說什么,做什么咽笼,有什么樣的動(dòng)作顷编,什么樣的神態(tài)。而計(jì)算機(jī)就是我們的演員褐荷,根據(jù)腳本做出反應(yīng)勾效。
現(xiàn)在我們來寫一個(gè)簡(jiǎn)單的小腳本吧~
一、bash腳本
1叛甫、新建一個(gè)目錄层宫,進(jìn)入目錄,在里面新建一個(gè)文件其监,后綴可以是.txt也可以是.sh(在命令行里萌腿,后綴除了提醒你自己知道這是個(gè)什么類型的文件以外,基本沒有什么鳥用emmm)
$ cd /e/prctice
$ mkdir local
$ cd local
$ touch demo.sh
2抖苦、這樣我們就將文件建好了毁菱,然后開始編輯我們的腳本內(nèi)容了
可以用start命令米死,用記錄本打開編輯它
start demo.sh
也可以用gitbash里的vim編輯器編輯(vim被稱為編輯器之神啊,如果可以的話贮庞,盡量學(xué)好它這里我為了自己練習(xí)一下峦筒,就用vim編輯啦)(暗戳戳扔個(gè)vim攻略~)
vim demo.sh
好了,我們開始輸入以下內(nèi)容窗慎,然后保存退出:
這個(gè)腳本內(nèi)容就是告訴計(jì)算機(jī)物喷,要?jiǎng)?chuàng)建一個(gè)demo目錄,進(jìn)入demo遮斥,創(chuàng)建css目錄和js目錄峦失,創(chuàng)建一個(gè)index.html文件,css目錄下的style.css文件术吗,以及一個(gè)js目錄下的main.js文件尉辑。
3、此時(shí)较屿,我們輸入
sh demo.sh
執(zhí)行一下腳本隧魄,看看是不是我們所想的那樣
用ls -l命令我們看到local里多了一個(gè)demo文件,進(jìn)入demo文件再查看吝镣,就發(fā)現(xiàn)下面確實(shí)執(zhí)行我們的腳本堤器。(有一個(gè)tree命令可以直接看到目錄的結(jié)構(gòu),但我是Windows系統(tǒng)末贾,tree執(zhí)行不了~)
4、是不是太簡(jiǎn)單了整吆,那我們加大一點(diǎn)點(diǎn)難度拱撵,如果我想生成demo aaa就生成demo aaa ,想生成demo 123就生成demo 123,我們應(yīng)該怎么做到改變目錄名字呢表蝙?我們想要直接填寫到里面內(nèi)容拴测,又要怎么做呢?如果我們還想讓它有邏輯府蛇,如果目錄已存在就報(bào)錯(cuò)退出集索,不存在就執(zhí)行又該怎么做呢?come on~
打開剛才的文件汇跨,我們重新編輯一下~
if else :如果……否則 條件語句
如果 [-d 1](1目錄)存在务荆,就退出,并在命令行里報(bào)錯(cuò)"error:dir existes"(你可以自己寫報(bào)錯(cuò)信息穷遂,比如文件已存在等)
$1 : 代表第一個(gè)參數(shù)
為什么是第一個(gè)參數(shù)函匕,那就谷歌~
5、好了蚪黑,我們執(zhí)行一下
aaa 已存在盅惜,那我們?cè)跒g覽器查看一下里面的index.html中剩,看看寫入內(nèi)容成功了沒
最后再看看我們的條件語句成功沒~
報(bào)錯(cuò),并退出了我們的簡(jiǎn)易腳本就完成了
二抒寂、node.js 腳本
之前我們寫的是bash腳本结啼,這個(gè)是node.js腳本,都是腳本屈芜,bash能寫的妆棒,這個(gè)也闊以,只是語法不同而已沸伏,想簡(jiǎn)單學(xué)習(xí)一下的就繼續(xù)吧~
用JS腳本寫之前的腳本:
var fs = require('fs')
聲明file system
var dirName = process.argv[2]
聲明一個(gè)目錄名xxx , [2]是取第二個(gè)變量的意思 , 我們執(zhí)行文件 node(0) node.js(1) xxx(2)
fs.mkdirSync( "./" + dirName)
對(duì)應(yīng) mkdir $1
process.chdir( "./" + dirName)
當(dāng)前進(jìn)程 對(duì)應(yīng) cd $1
fs.mkdirSync( 'css' )
對(duì)應(yīng) mkdir css
fs.mkdirSync( 'js' )
對(duì)應(yīng) mkdir js
fs.writeFileSync ( "./index.html" , "")
fs.writeFileSync ( "./css/style.css" , "")
fs.writeFileSync ( "./js/msin.js" , "")
對(duì)應(yīng) touch文件+echo“” >文件
process.exit (0)
對(duì)應(yīng) 進(jìn)程結(jié)束糕珊,退出
最后再去命令行里 node node.js bbb 就會(huì)發(fā)現(xiàn)成功創(chuàng)建了一個(gè) bbb目錄,我們的腳本這就成功了毅糟。
ok入門級(jí)腳本就到這里啦红选,歡迎指錯(cuò)(js里條件語句我寫不過來(大哭),去谷歌搜到了姆另,就是寫過來總是報(bào)錯(cuò)喇肋,再研究研究吧)