Frost Moon Project

リダイレクト/パイプを使用しているか識別する方法 - Frost Moon Project アクセスランキング

Home > Tips > リダイレクト/パイプを使用しているか識別する方法

リダイレクト/パイプを使用しているか識別する方法

  1. 問題
  2. 解決方法

問題
a.exe < file
dir /b | b.exe
の様に、リダイレクトやパイプが使用されているか如何かを識別し、
それに因って処理を分岐させるには如何すれば良いのでしょうか?
解決方法
isatty(fileno(stdin))を実行するだけで識別することが出来ます。
偽ならリダイレクトやパイプが使用されており、
真なら使用されていません。

※VCで利用する場合、unistd.hではなくio.hをincludeして下さい。


無事、リダイレクト/パイプを使用しているか識別することが出来ました。

関連Tips
リダイレクト/パイプでstdinを使用した後、fgets()で文字の入力を行う方法

Copyright(C)Frost Moon Project


Home > Tips > リダイレクト/パイプを使用しているか識別する方法