咋样查看网站用什么编程语言做的,南充二手房最新出售信息,零代码平台,企业馆展厅设计公司Gnu/Linux 系统编程 - 如何获取帮助及一个演示
今天开始写 Gnu/Linux 环境下的系统编程#xff0c;主要的用的语言是 C#xff0c;主要是为了学习 C 语言#xff0c;边学边写#xff0c;这样的学习速度是比较快的。
今天就先介绍下如何在手头上没有任何资料的情况下…Gnu/Linux 系统编程 - 如何获取帮助及一个演示
今天开始写 Gnu/Linux 环境下的系统编程主要的用的语言是 C主要是为了学习 C 语言边学边写这样的学习速度是比较快的。
今天就先介绍下如何在手头上没有任何资料的情况下如何自学编程。
首先我们要会获取操作系统提供的帮助信息。接下来就介绍如何自己找帮助信息。
自己找帮助信息
在 Gnu/Linux 中如果从系统获取相应的帮助信息呢那就是系统自带的 man pages。如果没有安装可以安装之。
yum install -y man-pages主要使用的几个章节
章节1用户命令章节2系统调用章节3标准库函数章节8系统/管理命令
man 命令默认的章节为1如果要查看 sleep 命令如何使用可以进行如下查询
man sleep如果要查看 sleep 的库函数如何使用使用如下方式查询
man 3 sleep如果不确定要查询的命令或函数可以使用 -k 选项
man -k keyword要想获取更详细的帮助信息可以使用 info 命令
info
# 直接查看具体的章节如
info libc
# 向下移动光标C-n
# 向上移动光标C-p
# 按键方式就是 Emacs 的按键方式这里就不介绍了
# 退出按 C-x C-c一个演示
今天就介绍一下与用户相关的函数 getpwnam。我们通过上面介绍的方式来查看其帮助信息
man 3 getpwnam#include sys/types.h
#include pwd.h
#include uuid/uuid.hstruct passwd *
getpwnam(const char *login);该函数需要的参数就是系统中的用户名返回值就是一个 passwd 类型的结构体指针。该 passwd 结构体信息在帮助文件中也是有说明的我把它贴出来
struct passwd {char *pw_name; /* user name */char *pw_passwd; /* encrypted password */uid_t pw_uid; /* user uid */gid_t pw_gid; /* user gid */time_t pw_change; /* password change time */char *pw_class; /* user access class */char *pw_gecos; /* Honeywell login info */char *pw_dir; /* home directory */char *pw_shell; /* default shell */time_t pw_expire; /* account expiration */int pw_fields; /* internal: fields filled in */
};掌握了上述信息后就可以写点东西了。代码如下
➜ my git:(liucc) ✗ cat my_getpwnam.c
#include stdio.h
#include stdlib.h
#include pwd.hint main(int argc, char *argv[])
{/* 定义一个结构体保存函数的返回值 */struct passwd *pwd;/* 需要给程序传递一个参数该参数是系统中的用户 */if (argc 2) {printf(Usage: %s username\n, argv[0]);exit(1);}/* 调用函数 */pwd getpwnam(argv[1]);if (pwd NULL) {printf(could not get %s record\n, argv[1]);exit(1);} else {printf(find [ %s ] record, the following is the info:\n, argv[1]);printf(Username: %s\n, pwd-pw_name);printf(Uid : %ld\n, (long)pwd-pw_uid);printf(Shell : %s\n, pwd-pw_shell);}return 0;
}编译并运行得到
➜ my git:(liucc) ✗ gcc -o my_getpwnam my_getpwnam.c
➜ my git:(liucc) ✗ ./my_getpwnam liuchuan
find [ liuchuan ] record, the following is the info:
Username: liuchuan
Uid : 501
Shell : /bin/bash是不是很简单好了今天就到这里每天 5 分钟只学习一个函数即可。我们下次再见。