Как приложению определить есть ли у него терминал или нет?
То есть приложению нужно знать как его запустили:
1) в виртуальной консоли или эмуляторе терминала;
2) средствами WM/DE (через ярлык, меню или через gui файловый менеджер);
3) 2-й способ, только с опцией "запустить в терминале".Навскидку, приходят мысли о isatty(stdout),
но что если в процессе запуска приложения stdout перенаправили
на другой терминал и нет дескриптора с номером 1?
>Как приложению определить есть ли у него терминал или нет?
>То есть приложению нужно знать как его запустили:
>1) в виртуальной консоли или эмуляторе терминала;
>2) средствами WM/DE (через ярлык, меню или через gui файловый менеджер);
>3) 2-й способ, только с опцией "запустить в терминале".
>
>Навскидку, приходят мысли о isatty(stdout),
>но что если в процессе запуска приложения stdout перенаправили
>на другой терминал и нет дескриптора с номером 1?я так полагаю, если нету 1 дескриптора то и говорить не о чем, твоему приложению уже выводить некуда.
а если есть то исследуй его. все равно много не определишь.
встречались мне такие дурацкие приложения которые не хотели в файл выводить, только на тту.
приходилось конвеер организовывать.