ein Kapitel zurück                                           ein Kapitel weiter

Um den Namen des Terminals zu erfragen gibt es die Funktion......

char *ctermid(char *term_zeiger);  

Die Funktion gibt die Adresse zurück an der der Name des Kontrollterminals steht. Dieser dürfte meistens /dev/tty lauten. Für term_zeiger sollten sie mindestens L_ctermid Bytes Speicherplatz reservieren. Die Konstante L_ctermid ist in der Headerdatei <stdio.h> definiert. Beispiel....

char terminalname[L_ctermid];

printf("Terminalname = %s \n",ctermid(terminalname));  

Hierzu nun ein kurzes Beispiel von ctermid........

/*Download:term7.c*/
#include <stdio.h> #include <unistd.h> #include <termios.h> char termname[L_ctermid]; char *tty_name() { return ctermid(termname); } int main() { printf("Terminalname = %s\n",tty_name()); return 0; }

Wenn sie die Adresse des Terminal-Pfadnamen benötigen gibt es die Funktion......

char *ttyname(int fd);  

Bei Fehler liefert diese Funktion NULL zurück......

/*Download:term8.c*/
#include <stdio.h> #include <unistd.h> #include <termios.h> char *tty_name() { return ttyname(STDIN_FILENO); } int main(int argc, char **argv) { printf("Nachricht von Terminal %s\n%s",tty_name(),*++argv); return 0; }

Öffnen sie nun 2 Pseudeo-Konsolen unter X. Ermitteln sie zuerst mit diesem Programm den Pfad der Konsole. In meinem Beispiel hat Konsole 1 den Pfad /dev/pts/2 und Konsole 2 /dev/pts/3
Führen sie nun unser Programm folgendermaßen aus(Wir gehen mal davon aus unser Programm oben heißt "sende")-> Schreiben sie in der Konsole 1 (/dev/pts/2) folgendes....

sende hallo > /dev/pts/3  

Auf der Konsole /dev/pts/3 steht jetzt......

Nachricht von Terminal /dev/pts/2
hallo  

Wenn sie wollen können sie jetzt vom Terminal /dev/pts/3 wie eben gemacht eine Nachricht an /dev/pts/2 senden. Dies funktioniert daher da wir mit....

ttyname(STDIN_FILENO)  

Den Terminalnamen von der Standarteingabe abfragen. Sie könne ja mal anstatt der Standarteingabe die Standartausgabe abfragen (STDOUT_FILENO)!

ein Kapitel zurück          nach oben           ein Kapitel weiter


© 2001,2002 Jürgen Wolf