SORU
21 AĞUSTOS 2009, Cuma


Eğer stdin C/C /Qt terminal veya bir boru olup olmadığını algılamak?

""Bağımsız değişkeni ile terminale kadar Python etkileşimli kabuk getiriyor. python öldürdüğümde ...

"Etkileşimli terminal modunu başlatmak değil. cat | python öldürdüğümde ... Bir şekilde, herhangi bir giriş olmadan, bir boru bağlı olduğunu tespit etti.

Nasıl C veya C veya Qt benzer bir tespit yapayım?

CEVAP
21 AĞUSTOS 2009, Cuma


Kullanım isatty:

#include <stdio.h>
#include <io.h>
...    
if (isatty(fileno(stdin)))
    printf( "stdin is a terminal\n" );
else
    printf( "stdin is a file or a pipe\n");

(Alt çizgi ile öneki onlar windows: _isatty, _fileno)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • PaulGBelliveau

    PaulGBellive

    5 Mart 2009
  • thelonelyisland

    thelonelyisl

    23 Aralık 2005
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012