Я працюю на "С" досить давно.
Я хотів би сказати "Привіт" моїм колегам, коли вони відкривають термінал і вхід в систему в перший раз на день
Я знайшов це повідомлення корисним
Не вдається прочитати дані з іншого терміналу за допомогою системного виклику read ()
Як я можу писати інші термінали (тому що, в pts / n - n буде відрізнятися від людини до людини) і сказати вітальне повідомлення?
Відповіді:
0 для відповіді № 1Це, мабуть, найпростіший з програм, з якими ви можете отримати багато підтверджень та обробки помилок тощо.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main ( int argc, char *argv[] )
{
if ( argc != 3 ) {
fprintf(stderr, "usage : msend "terminal" "message" ");
exit(1);
}
char filePath[256] = {0,};
if ( strncmp( argv[1], "/dev/pts", strlen("/dev/pts") ) ) {
sprintf( filePath, "/dev/%s" , argv[1] );
} else {
sprintf( filePath, "%s", argv[1] );
}
int fd = open( filePath , O_RDWR , O_APPEND);
write( fd, argv[2], strlen(argv[2]) );
return 0;
}
Спробуйте побудувати на вершині цього.