最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用nodejs監(jiān)控文件變化并使用sftp上傳到服務器

 更新時間:2017年02月18日 09:03:20   作者:這名字就是霸氣  
這篇文章主要介紹了利用nodejs監(jiān)控文件變化并使用sftp上傳到服務器的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

最近在用react+express做一個自己的工具型網站(其實就是奪寶島搶拍器)

然后因為經常要改動,而且又要放到服務器上進行測試??偸且獁ebpack,然后手動把文件上傳上去,不勝其煩,索性搜索了下,直接寫個能檢測文件變化并自動進行上傳的腳本好了。

首先,我們使用npm 安裝兩個別人封裝好的模塊。

npm install ssh2-sftp-client
npm install gaze

第一個模塊的作用是sftp上傳文件,

第二個模塊的作用就是監(jiān)聽文件變化了。當然,你也可以采用node自帶fs模塊。

這兩個模塊的用法在這里:ssh2-sftp-client gaze

安裝好了以后,第一步就是監(jiān)聽文件的變化了,由于我的文件已經使用webpack構建好了,所以后面只是文件變化,不會有文件增加,所以這里只需要使用changed就可以了,其他的用法請參考上面的鏈接,都大同小異

gaze(['你的文件路徑/*.*','還可以使用數(shù)組的方式監(jiān)聽多個文件夾/app.js'], function(err, watcher) {
 let watched = this.watched();
 //監(jiān)聽文件的變化
 this.on('changed', (filepath) => {
 //romotePath是我文件的遠程位置
 let romotePath = '/root' + filepath.substr(15);
 //put為上傳文件的函數(shù),下面會講 
 put(filepath,romotePath);
 console.log(filepath + ' was changed');
 });
}); 

然后就開始寫我們的上傳文件的函數(shù)

function put(localPath,romotePath){
 let sftp = new Client();
 sftp.connect({
 host: '你的服務器地址',
 port: '端口,沒改過的話是22',
 username: '連接的用戶名',
 password: '密碼'
 }).then(() => {
 return sftp.put(localPath,romotePath);
 }).then(() =>{
 console.log("上傳完成");
 }).catch((err) => {
 console.log(err, 'catch error');
 });
}

好了,別忘了在我們的文件開始的地方可是要引入模塊的。

let Client = require('ssh2-sftp-client');
let gaze = require('gaze');

接下來我們來實驗一下。來到我們的文件夾webpack一下

果然可以看到已經修改并且上傳完成了。上傳需要時間,請耐心等待。

來到我們的服務器,果然最近的修改時間已經變成現(xiàn)在了。

從此以后我終于不用一個個上傳了。每次要修改直接。打開一個窗口開啟這個腳本,就可以愉快的編碼了。

以上所述是小編給大家介紹的利用nodejs監(jiān)控文件變化并使用sftp上傳到服務器,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

  • 在node.js中讀寫文件的三種方法總結

    在node.js中讀寫文件的三種方法總結

    nodejs中所有與文件相關的操作都在fs模塊中,而讀寫操作又是我們會經常用到的操作,nodejs的fs模塊針對讀操作為我們提供了readFile,read, createReadStream三個方法,接下來小編就和大家一起來分析一下這三種方法
    2023-09-09
  • nodejs實現(xiàn)郵件發(fā)送服務實例分享

    nodejs實現(xiàn)郵件發(fā)送服務實例分享

    本文給大家講解的是簡單的使用nodejs搭建郵件發(fā)送服務的一個實例,非常的好用,有需要的小伙伴可以參考下
    2017-03-03
  • Node.js 實現(xiàn)簡單的無侵入式緩存框架的方法

    Node.js 實現(xiàn)簡單的無侵入式緩存框架的方法

    這篇文章主要介紹了Node.js 實現(xiàn)簡單的無侵入式緩存框架的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • npm install -g 遇到權限問題解析

    npm install -g 遇到權限問題解析

    這篇文章主要為大家介紹了npm install -g 遇到權限問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • 詳解KOA2如何手寫中間件(裝飾器模式)

    詳解KOA2如何手寫中間件(裝飾器模式)

    這篇文章主要介紹了詳解KOA2如何手寫中間件(裝飾器模式),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • node.js中axios使用心得總結

    node.js中axios使用心得總結

    這篇文章主要介紹了node.js中axios使用心得總結,以及分析了中間遇到的錯誤,大家參考一下。
    2017-11-11
  • 快速刪除 node_modules 目錄的集中方法(多種方法)

    快速刪除 node_modules 目錄的集中方法(多種方法)

    本文介紹了三種快速刪除node_modules目錄的方法:使用rimraf工具、通過npx運行rimraf以及在Windows命令提示符中使用del命令,每種方法都適合不同的操作系統(tǒng)和使用場景
    2024-11-11
  • nodejs密碼加密中生成隨機數(shù)的實例代碼

    nodejs密碼加密中生成隨機數(shù)的實例代碼

    本篇文章主要介紹了nodejs密碼加密中生成隨機數(shù)的實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Node.js包管理工具

    Node.js包管理工具

    本文主要詳細介紹了node包管理工具,主要介紹了npm,cnpm及yarn,文中有詳細的代碼示例,對學習具有一定參考價值,需要的朋友可以參考一下
    2023-04-04
  • nodejs中安裝ghost出錯的原因及解決方法

    nodejs中安裝ghost出錯的原因及解決方法

    本篇文章主要介紹了nodejs中安裝ghost出錯的原因及解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10

最新評論

阿荣旗| 雷州市| 襄樊市| 余干县| 松滋市| 大丰市| 凌源市| 筠连县| 鄱阳县| 南木林县| 建昌县| 田阳县| 西吉县| 四平市| 锦州市| 凌云县| 育儿| 礼泉县| 岳阳县| 新郑市| 高碑店市| 鄂州市| 荃湾区| 吴旗县| 项城市| 永胜县| 万州区| 资溪县| 泰安市| 建始县| 桐柏县| 获嘉县| 舒城县| 漳平市| 保康县| 平遥县| 浑源县| 惠安县| 万年县| 永德县| 秭归县|