2017-08-23 ファイルからの入力に標準入力を使う Linux ./program input.txt ファイルからデータを読み込むプログラムに、標準入力からのデータを読み込ませるには、/dev/stdin を使う cat input.txt | ./program /dev/stdin コンソールからの直接入力はできない ./program /dev/stdin 「ファイルをオープンしてread関数で一気に全部読む」という作りのプログラムだった場合、正常に動作しない。 bashはラインバッファリングするため、「一気に全部読む」つもりでも最初の1行だけ読んで終わってしまう。 完全バッファリングさせてから読ませたいので、バッファリングするプログラム*1をまず先に通すようにする perl -e 'while(<>){$t.=$_};print $t' | ./program /dev/stdin *1:そういう都合のいいプログラムが無かったのでperlで書いた