《Linux》终端
文章目录
一、对终端进行读写
1.1、重定向
int isatty(int fd); //<unistd.h>
如果打开的文件描述符fd连接到一个终端,则系统调用isatty返回1,否则返回0
- 例子:
/检查是否存在输出重定向
if(!isatty(fileno(stdout)))
{
fprintf(stderr,"You are not a terminal!\n");
exit(1);
}
// int fileno(FILE *f); FILE * -> fd
- 菜单1
代码:
运行代码:
1.2、使用/dev/tty
关键代码
运行结果:
二、termios结构
最小的termios结构的典型定义:
struct termios{
tcflag_t c_iflag; 输入模式
tcflag_t c_oflag; 输出模式
tcflag_t c_cflag; 控制模式
tcflag_t c_lflag; 本地模式
cc_t c_cc[NCCS]; 特殊控制字符
}; //<termios.h>
int tcgetattr(int fd, struct termios *termios_p