powershellの中でウィンドウアプリにパイプするとデータが重複する?
再現手順
powershell "type .\in.txt|wscript.exe readall.js" >out.txt
ここで、readall.jsは、
new ActiveXObject("scripting.filesystemobject").getstandardstream(1).write(new ActiveXObject("scripting.filesystemobject").getstandardstream(0).readall())
入力データは8kb。
出力は入力データの後に入力データの4kb以降のデータが続く。
原因
パイプのバッファサイズは4kb?
入力のeofでパイプバッファ上のデータをクリアせずにまた渡している?
回避方法
コンソールアプリに化かす。
powershell "type .\in.txt|cmd.exe /c wscript.exe readall.js" >out.txt
« 関連付けでフォルダの詳細表示相当を保存印刷する。(その2) | トップページ | バッチファイルや関連付けでフォルダの詳細表示相当+フォルダサイズを表示する。 »