Небольшое дополнение к давнему посту про определение того же самого в Bash и Ruby. Собственно, ограничусь кодом:
{$mode objfpc}{$h+} uses BaseUNIX; var info : Stat; begin FpFStat(stdout, info); if (info.st_mode and S_IFCHR) <> 0 then WriteLn('Test stdout console: '#27'[1mYES'#27'[0m.') else WriteLn('Test stdout console: no.'); end.
Точно работает под Linux, также должно работать под FreeBSD и MacOS X. Виндовый аналог искать лень.