こんにちは。
本日はDenoメモです。
概要
コマンドライン引数でファイルパスを与えて
そのファイルを読み込み、コンソールに出力するサンプルです。
catコマンドのような動作を期待したサンプルです。
サンプルコード
const files = Deno.args for (const filename of files) { console.log(`[${filename}]`) const f = await Deno.open(filename) await f.readable.pipeTo(Deno.stdout.writable, { preventClose: true }) }
まず、Deno.args
を使用してコマンドライン引数を取得します。
取得する値は、string[]
となっています。
次に、Deno.open
で指定したファイルをオープンします。
戻り値はPromise < FsFile >
です。
最後に、ReadableStreamのpipeTo
メソッドを使用して
指定したWritableStreamにパイプ接続します。
今回は、標準出力を指定しています。
本サンプルコードを、cat_sample.ts
というファイル名で作成し、
Hello.txtというファイルを読み込む場合、以下のように実行します。
$ deno run --allow-read cat_sample.ts Hello.txt
以上です。