Node.jsでzipファイルを操作する。

Node.jsでシェルを動かせると聞いてやってみた。今回は試しにZIPファイルの操作!

シェルを動かせれば、UNIXコマンド叩ければ、なんでもできるんじゃないかと勘違いしてる初心者プログラマーです。

まずはchild_processのインストール。

npm install child_process

 

このchild_processを使って、シェルを動かそうみたいな。windowsでいうところのコマンドプロンプト、macでいうところのターミナル。

 

ZIPファイルを作成するぞ。

それでは使っていく。

const exec = require("child_process").exec ;
exec(zip -r "+fileName+" "+filePath, function(err,stdout,stderr){
	console.log(err) ;
	console.log(stdout) ;
	console.log(stderr) ;
}) ;

 

errはZIPファイルにしたいファイルがないときとかにエラーがでるやつ。(おそらくNode.js側で判断するやつ)

stdoutは、standard errというらしく、そのコマンド内で書き出されたもの。ZIPファイルの生成じゃわかりにくいですね。

stderrは、stdoutと同様にコマンドを実行したコマンドのエラー。

 

ZIPファイルを解凍するぞ。

const exec = require("child_process").exec ;
exec("unzip "+ fileName +" -d "+outputPath,function(err, stdout, stderr){
	console.log(err) ;
	console.log(stdout) ;
	console.log(stderr) ;
});

 

こちらもほとんど同じ。もはやなんでZIPファイルを選んだのか…わかりにくい例を選んじゃったな…

シェルを叩けるということは、JavaやCなどのプログラミング言語もきっと実行できるはず。試してないけど。

 

以上!

じゃーの。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください