成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

Node.js .sh scripts Manager

crossoverJie / 1910人閱讀

摘要:命令行也有苦惱不知身為前端的你是不是還在使用開(kāi)發(fā)反正我是。每次都從桌面到工作目錄中去,雙擊完事。在上一家公司做應(yīng)用的時(shí)候,對(duì)也是深?lèi)和唇^。最后無(wú)不以文件收尾。的由來(lái)前些時(shí)間接觸到一個(gè)管理的,叫,用起來(lái)真是爽。也可以使用的形式自己添加。

命令行也有苦惱

不知身為前端er的你是不是還在使用 Windows 開(kāi)發(fā)?反正我是。使用 Git?使用 npm scripts?好吧,命令行是少不了的吧?想必很多同學(xué)和我一樣,使用 Git Bash 作為命令行終端吧。

可是每次都要敲,累不累?想想一次簡(jiǎn)單的 Git 提交需要幾個(gè)步驟?

$ git add -A
$ git commit -m "commit"
$ git push

圖簡(jiǎn)便的你可能會(huì)在 package.json 中這樣配置:

{
    // ...
    "scripts": {
       // ...
       "push": "git add -A && git commit -m "commit" && git push"
    }
}
// ...

然后再敲 npm run push。啊啊心好累。

用過(guò) browser-sync cli 嗎?反正為了圖簡(jiǎn)便,我是經(jīng)常用的。敲過(guò)最{{BANNED}}的是下面這一行:

browser-sync start --server --files "dist/*" --index "dist/index.html" --open "external" --reload-debounce --no-notify
.bat/.sh 的故事

敲過(guò)一次之后,發(fā)誓再也不這么玩了。索性在桌面保存了一個(gè) bs.bat 文件,把上面的內(nèi)容放進(jìn)去。每次都從桌面 copy 到工作目錄中去,雙擊完事。

后來(lái)玩 github 稍微勤了一些,commit、pull 的時(shí)候,命令行敲起來(lái)固然爽得不行,可是累啊。在上一家公司做 react-native 應(yīng)用的時(shí)候,對(duì) react-native run start cd android && ./gradlew assembleRelease 也是深?lèi)和唇^。最后無(wú)不以 bat、sh文件收尾。

nshm 的由來(lái)

前些時(shí)間接觸到一個(gè)管理 npm registry 的 package,叫 nrm,用起來(lái)真是爽。nrm use taobao nrm add xx url簡(jiǎn)單就能解決問(wèn)題。這讓我萌生一個(gè)想法:能不能不要每次都從桌面 copy 那些簡(jiǎn)單的腳本啊,來(lái)個(gè)簡(jiǎn)單的命令行自己把文件寫(xiě)目錄不就 OK 了嗎?

醞釀了一段時(shí)間。遲遲不肯動(dòng)手。今天中午下樓抽煙,靈機(jī)一動(dòng),思路來(lái)了,花了半下午時(shí)間,邊寫(xiě)邊重構(gòu),最終做出來(lái)一個(gè)略嫌簡(jiǎn)陋但還能湊合用的工具,名之曰 “nshm”,取 “Node.js .sh scripts Manager” 的縮寫(xiě),放在 Github 上了,https://github.com/AngusFu/nshm。

使用起來(lái)很簡(jiǎn)單,看文檔就行。

安裝
$ npm install nshm -g

$ nshm  [args...]
添加一條自定義命令
$ nshm add  -[t|f] [text|path]

# add file content
$ nshm add commit --file ./my-commit.sh
# or
$ nshm add commit -f ./my-commit.sh

# add text content
$ nshm add pull --text "git pull"
# or
$ nshm add pull -t "git pull"
多個(gè)命令合并成一條命令
$ nshm co  [command|text] [command|text] [command|text] [...]

$ nshm co git commit pull "git status"
刪除緩存的命令
$ nshm rm   <...> 

$ nshm rm commit pull git
清除所有緩存的命令
$ nshm clean
列出現(xiàn)有的命令
# view all names
$ nshm ls

# view all details
$ nshm ls -a
Example 01
$ nshm add add -t "git add -A"
$ nshm add commit -t "git commit -m "push""
$ nshm add pull -t "git push"

$ nshm co git add commit pull

# init my directory
# then we"ll get `add.sh` `commit.sh` `pull.sh`
$ nshm git 
Example 02
# browserSync cli 
# here we use `${}` as placeholders
# for necessary params
$ nshm add bs -t "browser-sync start --server --files "${files}" --index "${index}" --open "external" --reload-debounce --no-notify"

# now we get the `bs.sh` file under our working directory
$ nshm bs --file "**" --index "index.html"
結(jié)尾

工具默認(rèn)自帶了 Git 相關(guān)的 commit pull 及集成兩者的 git 命令,還有上面提到的 browser-sync 的命令(簡(jiǎn)稱(chēng)作bs)。也可以使用 nshm add 的形式自己添加。

微不足道的工具,自?shī)首詷?lè)一下,雖然顯得 low 了點(diǎn),也能解決自己的一點(diǎn)問(wèn)題。

That"s all。

PS: 今晚開(kāi)始看 WebRTC 的內(nèi)容,小有收獲,學(xué)習(xí)筆記會(huì)放在 https://github.com/AngusFu/webRTC-demo 這里,不是對(duì)書(shū)上 demo 的簡(jiǎn)單重復(fù),而是按照自己的理解來(lái)記錄。學(xué)習(xí)的生活撿起來(lái)!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/80008.html

相關(guān)文章

  • 阿里云 ECS 部署:nginx+MySQL+Laravel+PHP7+Redis+Node.js

    摘要:修改增加注意中的應(yīng)為你的項(xiàng)目名稱(chēng),應(yīng)為你的服務(wù)器公網(wǎng)。配置完之后重啟,使上面的配置項(xiàng)生效。安裝添加下面鏈接中的源,然后安裝番外安裝如果已經(jīng)下了想升級(jí)成的朋友可執(zhí)行以下代碼把之前的掉安裝現(xiàn)在的 版本:ubuntu 14.04(64位) 1.安裝 Nginx(version:1.9) 1、首先添加nginx_signing.key wget http://nginx.org/keys/ng...

    dingding199389 評(píng)論0 收藏0
  • 阿里云 ECS 部署:nginx+MySQL+Laravel+PHP7+Redis+Node.js

    摘要:修改增加注意中的應(yīng)為你的項(xiàng)目名稱(chēng),應(yīng)為你的服務(wù)器公網(wǎng)。配置完之后重啟,使上面的配置項(xiàng)生效。安裝添加下面鏈接中的源,然后安裝番外安裝如果已經(jīng)下了想升級(jí)成的朋友可執(zhí)行以下代碼把之前的掉安裝現(xiàn)在的 版本:ubuntu 14.04(64位) 1.安裝 Nginx(version:1.9) 1、首先添加nginx_signing.key wget http://nginx.org/keys/ng...

    joyvw 評(píng)論0 收藏0
  • 從零開(kāi)始使用node讀取txt處理后導(dǎo)出excel

    摘要:安裝執(zhí)行版本號(hào),例如以下語(yǔ)句可以安裝幾的版本好像在墻內(nèi)只能找到以前的版本使用可以查看現(xiàn)有的版本,可以支持模糊切換。 一直說(shuō)要好好學(xué)習(xí),總結(jié)知識(shí)什么的。一直覺(jué)得沒(méi)有時(shí)間。周一終于提交了論文盲審。決定從今天每周都總結(jié)一次自己的所學(xué)。希望自己能堅(jiān)持。 任務(wù)描述: 一個(gè)醫(yī)學(xué)系的同學(xué)要分析一個(gè)叫TCGA的數(shù)據(jù)庫(kù),每個(gè)實(shí)驗(yàn)文件是txt,格式如下: hsa-miR-1228* 5.185500...

    frank_fun 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<