添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
const exec = require( 'child_process' ).exec; exec( 'ls -la ./' , (err, stdout, stderr) => { if (err) { console.log(err); } console.log(stdout);

exec関数は非同期関数であり、callbackに渡されるのは、err、標準出力文字列、 標準エラー出力 文字列です。
また、同期的に処理を実行したい場合にはexecSyncが利用できます。

const execSync = require( 'child_process' ).execSync; const result = execSync( 'ls -la ./' ); console.log(result);

execSyncの返り値はBufferなので注意しましょう。

$ node test.js <Buffer 74 6f 74 61 6c 20 38 30 0a ... >

出力結果を処理したい場合にはtoString()などを利用しましょう。

const result = execSync( 'ls -la ./' ).toString(); $ node test.js total 10 drwxr-xr-x 17 user test 578 4 24 17:17 . drwxr-xr-x 14 user test 476 4 17 05:02 .. -rw-r--r--@ 1 user test 6148 3 27 10:49 file1 -rw-r--r-- 1 user test 188 1 21 12:55 file2 詳しい仕様は公式ドキュメントを参照ください。
Child Process Node.js v6.1.0 Manual & Documentation


サーバサイドJavaScript Node.js入門 (アスキー書籍)

サーバサイドJavaScript Node.js入門 (アスキー書籍)

実践Node.js プログラミング (Programmer's SELECTION)

実践Node.js プログラミング (Programmer's SELECTION)