whoami实现c++
passwd结构体:
struct passwd *getpwuid(uid_t uid);The passwd structure is defined in <pwd.h> as follows:
struct passwd {
char *pw_name; /*user name */
char *pw_passwd; /*user password */
uid_t pw_uid; /*user id */
gid_t pw_gid; /*group id */
char *pw_gecos; /*user real name */
char *pw_dir; /*home directory */
char *pw_shell; /*shell program */
};
getopt命令行解析函数,从左往右逐个解析argv(选项+选项参数),每次调用解析一个选项,解析完成返回-1。重排argv,operands如果在option之前则跳过,放在argv后面位置。
getind为下一个要访问的选项位置,初始值为1。在getopt解析完成返回后,optind指向第一个operands。
getarg保存当前扫描的选项的参数。
getopt(argc, argv, "ab:c::")
getuid获取用户id,调用getpwuid查询用户对应passwd结构体,获取用户名
简易whoami实现:
#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>
#include <iostream>
#include "error.h"
#include <unistd.h>
using namespace std;int main(int argc,char** argv){if(argc!=optind){error(0,0,"extra arg!");exit(-1);}struct passwd *pw;uid_t uid;uid=getuid();pw=(uid==-1)?NULL:getpwuid(uid);if(!pw)cout<<"cannot find name for user ID"<<uid<<endl;elsecout<<pw->pw_name<<endl;return 0;
}
whoami实现c++相关推荐
- 与用户登录有关的命令w who whoami last lastb lastlog
与用户登录有关的命令 w:执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序 who:显示当前已经登录的用户信息 whoami:打印当前用户名 last,显示/var/log/wtm ...
- whoami,who,w命令详解
http://www.voidcn.com/blog/wszzdanm/article/p-6145895.html 命令功能:显示登录用户的信息 命令格式: 常用选项: 举例: w 显示已经登录的用 ...
- 高级指令——hostname指令【作用:操作服务器的主机名(读取、设置)】、id指令【查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…)】、whoami指令、ps -ef指令
1.hostname指令 作用:操作服务器的主机名(读取.设置) 语法1:#hostname 含义:表示输出完整的主机名 语法2:#hostname -f 含义:表示输出当前主机名中的FQDN(全限 ...
- who whoami who am i的区别
who whoami who am i的区别:在Linux系统上这几条命令都是查看我是谁? 但是有区别,在Linux系统命令行操作来回切换用户多次,很容易混淆现在处于什么用户下,当以root身份登录后 ...
- 【Linux】一步一步学Linux——whoami命令(96)
00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 显示与当前的有效用户ID 相关联的用户名. 与id -un ...
- Linux 命令之 whoami -- 打印当前有效的用户名称
文章目录 命令介绍 参考示例 命令介绍 whoami 命令用于打印当前有效的用户名称,相当于执行 id -un 命令. 参考示例 [root@htlwk0001host ~]# whoami root
- Linux whoami命令、Linux su命令、Linux w命令
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. Linux whoami命令用于显示自身用户名称. 显示自身的用户名称,本指令相当于执行" ...
- Linux如何查看所有用户和用户组信息(cat groups whoami)
1.cat /etc/passwd查看所有的用户信息 concatenate files and print on the standard output把文件连接后输出到屏幕上 cat /etc/p ...
- linux shell 当前用户名,在Linux中使用Whoami命令显示当前登录用户名称及替代命令的方法...
本文介绍在Linux操作系统中使用Whoami命令的方法,顾名思义,whoami命令显示有效用户ID的用户名,换句话说,它显示当前登录用户的名称. 使用whoami命令的方法 whoami命令的语法如 ...
- linux usr local权限,【linux】sudo chown -R $(whoami) /usr/local提示操作被拒绝
电脑是mac,终端运行brew时,提示: Please run brew update! 按提示执行brew update,提示: Error: /usr/local must be writable ...
最新文章
- 开关面板如何自己印字_如何自己动手做一个智能开关
- 【 MATLAB 】信号处理工具箱之 ifft 简介及案例分析
- Linux中的目录和文件管理
- HA总结:AWS 网络连接
- Java Web会话管理
- Kingback小组冲刺博客
- 分享一个非常全的php正则验证车牌格式的函数
- android svg指纹录取动画_你知道几种前端动画的实现方式?
- mysql主从复制实施流程_MySQL主从复制认识及实施操作
- 3个最典型的图表错误使用方式,赶紧看看自己是否中招
- 【Oracle】手工建库时启动到nomount状态时错误ORA-09925,ORA-01017
- 与数据相关的运算符和伪指令
- python常见的错误类型_python中新手朋友常见的错误信息汇总
- ProE 5.0免安装版软件安装教程
- vim 编辑器sed 替换字符串方法
- android设置wifi蓝牙共享文件,无需互联网或蓝牙即可通过WiFi通过android共享文件...
- ssh-keygen:you don't exist,go away
- 物体识别基本原理及其Python实现
- Right-BICEP单元测试
- 论文阅读 Learning Motion in Feature Space: Locally-Consistent Deformable Convolution Networks