Node Stream API
Stream 処理
Node.js Stream を使いこなす - Qiita
Node.jsのStream APIの概要 - Qiita
Node.js StreamAPI から逃げちゃダメだ。逃げちゃダメだ。。 - Qiita
外部コマンドの出力をファイルへ書き出す
Child Process | Node.js v13.12.0 Documentation
child_process.spawn を使う
出力を pipe でファイルの WriteStream へ
code:writestream.ts
new Promise((resolve, reject) => {
const out = fs.createWriteStream(./${file}.json, 'utf8');
const proc = spawn('gcloud', [
'--project=adtrust',
'logging',
'read',
'--format=json',
...commonFilter, ...query.join(' AND '),
]);
proc.on('error', reject);
proc.stdout.pipe(out);
proc.stdout.on('end', resolve);
})
メモリ上のデータを CloudStorage へ streaming upload する
Cloud Storage#5e689f513844610000f64d9c
ファイルを改行ごとに処理する
code:readline.ts
import * as fs from "fs";
import * as readline from "readline";
const input = fs.createReadStream("hoge.txt", "utf8");
const reader = readline.createInterface({ input });
reader.on("line", (line) => {
console.log(line);
});
reader.on("close", () => {
console.log("done");
});
node-fetch で stream に書き出す
node-fetch/node-fetch: A light-weight module that brings window.fetch to Node.js
#Node #dev