Linux实现who
来源:互联网 发布:淘宝人生免费txt下载 编辑:程序博客网 时间:2024/06/05 18:30
$ vi who01.c
新建who01.c
who是用来显示当前用户的用户名、终端类型、登录时间等信息的。
/*** who* open, read UTMP file, and show results*/#include<stdio.h>#include<utmp.h>#include<fcntl.h>#include<unistd.h>#include<time.h>//#define SHOWHOST // include remote machine on outputvoid show_info( struct utmp * utbufp );int main(void){struct utmp current_record; // read information into hearint utmpfd; // read from this descriptorint reclen = sizeof(current_record);if( (utmpfd = open(UTMP_FILE, O_RDONLY)) == -1 ){perror( UTMP_FILE ); // UTMP_FILE is in utmp.hexit(1);}while( read(utmpfd, ¤t_record, reclen) == reclen){show_info(¤t_record);}close( utmpfd );return 0; // OK}/*** show_info* displays contents of the utmp struct in human readable from*/void show_info(struct utmp *utbufp ){if(utbufp->ut_type != USER_PROCESS) // users onlyreturn;printf("% -8.8s", utbufp->ut_name); // the lognameprintf(" "); // a spaceprintf("% -8.8s", utbufp->ut_line); // the ttyprintf(" ");printf("%12.12s", ctime( &(utbufp->ut_time)) + 4 ); // login time printf(" ");#ifdef SHOWHOSTprintf("% -8.8s", utbufp->ut_line); // the host#endifprintf("\n");}
与系统的who输出一模一样啦!
summer个人博客主页http://blog.csdn.net/xiamo20149
参考《Unix/Linux编程实践教程》
0 0
- Linux实现who
- linux中who的实现
- Linux命令实现(1) who
- 使用C实现LINUX中who功能
- Linux下who命令的实现
- linux编程who命令的简单实现
- unix/linux who命令的实现
- who - linux
- linux编程实践3(实现who命令)
- linux编程who命令的简单实现(缓冲机制)
- 【C语言】实现Linux下的who命令
- Linux命令who am i,who,whoami
- who命令的实现
- 用 ANSI实现who
- who 命令实现
- who|sort实现
- who命令实现
- 实现who命令
- iOS开发之控件frame/bounds/center尺寸快速赋值改变小技巧-简单给UIView新增分类
- 没有试过,你永远不知道
- 我的相信和不相信
- jsoup解析日志正文
- VK Cup 2015 - Round 2 (unofficial online mirror, Div. 1 only) B. Work Group 树形dp
- Linux实现who
- jbpm3-4-5-6与Activiti
- boost::circular_buffer简介
- 关于android在TOMCAT服务器下载文件名带中文的文件的编码问题
- 设计一个算法,求非空二叉树中指定的第k层(k>1)的叶子节点的个数
- Hbase总结(六)hbase37个笔试题
- Tsung-安装-1
- RAID5阵列中两块磁盘告警后的处理步骤
- 测试排序算法耗时