0
ディレクトリのIPアドレスを再帰的にgrepしようとしています。 私は2つのファイル、one
とtwo
持っている:ここで私は、IPのを取得するためにはgrepを使う方法ですノードchild_processでgrepをbashよりも使用したときの結果が異なります
└┼─$─┤▶ cat one
test
192.168.1.2
192.168.1.1102
182982
19829872.28288222.222982
sqdqssdsqd:12.92822.sldql
192.168.1.91
└┼─$─┤▶ cat two
edezdzedezdezdezd:&&122.12
&&é&
ddzez
efreffe
np.ip
を:
└┼─$─┤▶ grep -sRIEoh '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
192.168.1.2
192.168.1.110
192.168.1.91
192.99.99.99
そして、私はchild_processを使用してノードで同じことをやってトリングだ:
var spawn = require('child_process').spawn
var child
function puts(error, stdout, stderr) { console.log(stdout,error,stderr); process.exit(); }
const grep =spawn('grep',['-sRIEoh' ,'[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}','/home/user/test'])
const uniq = spawn('uniq');
grep.stdout.pipe(uniq.stdin);
grep.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
しかし、何らかの理由で結果が異なる...
└┼─$─┤▶ node test.js
stdout: 192.168.1.2
192.168.1.110
19829872.282
88222.222982
12.92822
192.168.1.91
192.99.99.99
の