本博客著作權(quán)歸從這到那所有,轉(zhuǎn)載請(qǐng)注明出處
命令行和Node.js簡(jiǎn)單學(xué)習(xí)
bash腳本
先看一個(gè)bash 腳本
if [ ! -f "$1" ];then
echo "$1 not exist"
exit 1
else
cat $1
exit 0
fi
保存為 my-show.sh
這個(gè)腳本的作用是將要查找的文件打印到屏幕上,加了是否存在的判斷。
第一個(gè)知識(shí)點(diǎn):參數(shù) 。$1
這個(gè)就是參數(shù)。獲取腳本后帶的第一個(gè)參數(shù),/path/to/my-show.sh test
其中test
就是第一個(gè)參數(shù)。
第二個(gè)知識(shí)點(diǎn):判斷。 if...else
這是bash語法里的判斷語句。
第三個(gè)知識(shí)點(diǎn):異常處理。通過判斷語句來判斷文件是否存在。
第四個(gè)知識(shí)點(diǎn):返回值。在上面的腳本中,如果正常我們退出為0 exit 0
,在bash里表示正常。當(dāng)異常時(shí)我們退出為1exit 1
API
應(yīng)用程序接口(Application Programming Interface),又稱應(yīng)用編程接口,就是軟件系統(tǒng)不同組成部分銜接的約定。
什么是Node.js
學(xué)習(xí)Node.js建議在Linux或mac環(huán)境下,windows會(huì)有很多未知的坑。
Node.js不是JS應(yīng)用、而是JS運(yùn)行平臺(tái)
瀏覽器也是一個(gè)平臺(tái)
NPM
說道Node.js我們就需要了解NPM,NPM其實(shí)就是一個(gè)共享代碼的平臺(tái),將代碼整合到一個(gè)平臺(tái)上方便開發(fā)者使用。 NPM是干什么的
npm install jQuery
就相當(dāng)于
wget https://github.com/jquery/jquery/archive/3.1.1.zip
unzip 3.1.1.zip
簡(jiǎn)單配置NPM
1.npm config set loglevel http
顯示npm發(fā)的每一個(gè)請(qǐng)求。
2.npm config set progess false
關(guān)閉進(jìn)度條,據(jù)說能夠加快下載速度。
3.配置國(guó)內(nèi)源加快下載速度 npm config set registry https://registry.npm.taobao.org
恢復(fù) npm config delete registry
Node.js寫個(gè)簡(jiǎn)單命令行程序
剛開始看不懂代碼沒有關(guān)系,我們能夠在網(wǎng)上搜索到并解決問題就可以。
比如我們要寫一個(gè)顯示當(dāng)前目錄下所有文件的腳本文件。通過搜索“Node.js顯示當(dāng)前目錄下文件”我們得到了如下結(jié)果
#!/usr/bin/env node
var fs = require("fs");
console.log("查看當(dāng)前目錄");
fs.readdir(process.cwd(),function(error, files){
if (error) {
return console.error(error);
}
files.forEach( function (file){
console.log( file );
});
});
保存為my-show.js
執(zhí)行node my-show.js
就可以看到效果了。
發(fā)布代碼到NPM
如果我們要發(fā)布程序到NPM供其他人下載的話,我們就可以在程序所在的目錄下NPM init
按照提示來輸入,會(huì)在當(dāng)前目錄生成含如下內(nèi)容的package.json
{
"name": "test",
"version": "1.0.0",
"description": "just test,dont download",
"main": "my-show.js",
"dependencies": {
"jquery": "^3.1.1"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"bin":{
"my-view":"my-view.js"
},
"author": "test",
"license": "ISC"
}
再執(zhí)行npm addusr
npm publish
如何學(xué)習(xí)編程
1.編程其實(shí)是個(gè)很復(fù)雜的東西。
2.但是我們可以在不知道實(shí)現(xiàn)原理的情況下,通過搜索或者詢問其他會(huì)的人來學(xué)會(huì)如何先實(shí)現(xiàn)一些效果。
3.我們?cè)谑褂玫倪^程中就會(huì)逐漸明白運(yùn)作的原理。