在Linux登录时显示消息

时间:2017-11-10 11:35:27

标签: c linux login

我希望每次登录我的用户时都会显示一个终端,并显示一条消息,并按行和列的特定大小。

我的第一个近似是在C中创建一个程序,它将创建该终端并在其上打印,然后在登录时创建一些命令来运行该命令,但我不知道该怎么做。也许,当运行命令时,它可能在后台运行而没有显示终端。

那么,我该如何实现呢?

这是我的第一次尝试:

#include <stdio.h>
#include <sys/ioctl.h>

struct winsize w_old;

void reconfig_terminal () __attribute__ ((destructor)) {
    ioctl(STDOUT_FILENO, TIOCSWINSZ, &w_old);
}

int main (int argc, char *argv[]) {
    struct winsize w_new;

    if (ioctl(STDOUT_FILENO, TIOCGWINSZ, &w_old) == -1)
        return 0;

    w_new = w_old;
    w_new.ws_row = 4;
    w_new.ws_col = 19;

    if (ioctl(STDOUT_FILENO, TIOCSWINSZ, &w_new) == -1)
        return 0;

    printf("\n    Alvaro Rojo\n      MARICON");

    while (1) { /* Esperamos hasta el fin del mundo */ }

    return 0;
}

1 个答案:

答案 0 :(得分:0)

将以下行添加到〜/ .bashrc

回声&#34;欢迎$(whoami)&#34;

无论你回复什么信息,它都会显示出来。