ホームページ > 記事 > ウェブフロントエンド > nodejs を使用してファイルの変更を監視し、sftp を使用してサーバーにアップロードします
この記事では、nodejsを使用してファイルの変更を監視し、sftpを使用してサーバーにアップロードする方法を主に紹介します。非常に優れており、必要な友人は参考にしてください。
最近、私はreact+expressを使用してビルドしています。私自身のツール Web サイト (実際には、宝探しの島のスナッパーです)
それから、頻繁に変更する必要があり、テストのためにサーバーに置く必要があるためです。私は常に webpack を使用してファイルを手動でアップロードする必要がありますが、これは非常に面倒なので、ファイルの変更を検出して自動的にアップロードできるスクリプトを検索して作成しました。
まず、npm を使用して、他の人がパッケージ化した 2 つのモジュールをインストールします。
npm install ssh2-sftp-client npm install gaze
最初のモジュールは sftp 経由でファイルをアップロードするために使用され、
2 番目のモジュールはファイルの変更を監視するために使用されます。もちろん、node に付属の fs モジュールを使用することもできます。
これら 2 つのモジュールの使用法は次のとおりです: ssh2-sftp-client gaze
インストール後の最初のステップは、ファイルの変更を監視することです。私のファイルは webpack を使用して構築されているため、以下はファイルの変更のみです。他の使用方法については、上のリンクを参照してください。どれも似ています
gaze(['你的文件路径/*.*','还可以使用数组的方式监听多个文件夹/app.js'], function(err, watcher) { let watched = this.watched(); //监听文件的变化 this.on('changed', (filepath) => { //romotePath是我文件的远程位置 let romotePath = '/root' + filepath.substr(15); //put为上传文件的函数,下面会讲 put(filepath,romotePath); console.log(filepath + ' was changed'); }); });
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'); }); }
これからは、ついに一つずつアップロードする必要がなくなりました。直接変更したいときは毎回。ウィンドウを開いてこのスクリプトを開始すると、楽しくコーディングできるようになります。
上記は、nodejs を使用してファイルの変更を監視する方法と、sftp を使用してサーバーにアップロードする方法についての編集者による紹介です。ご質問がある場合は、メッセージを残してください。編集者が返信します。間に合ったあなた。また、PHP 中国語 Web サイトをサポートしていただきありがとうございます。
nodejs を使用してファイル変更を監視する方法と、sftp を使用してサーバーにアップロードする方法に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。