【linux环境编程】模拟Shell解释器熟悉linux下的C语言编程

开发环境

Red Hat Enterprise Linux Server release 7.0 (Maipo)

开发语言

C

参考书籍

Linux程序设计 第四版

代码地址

https://github.com/GoingJack/Mybash

知识要点

  1. 用户名字,用户ID的获取方法

    头文件:

    #include <sys/types.h> 
    #include <pwd.h>

    作用:获取系统相关信息(当前用户名,用户ID,用户组ID,用户家目录,用户Shell)信息返回指向passwd类型结构体指针。
    struct passwd *getpwuid(uid_t uid);
    passwd结构体体成员变量:


  2. 主机名字的获取

    #include <sys/utsname.h>
    int uname(struct utsname *name);
    
    #include <unistd.h>
    int gethostname(char *name ,size_t namelen);
    作用:gethostname函数把机器的网络名写入name字符串.该字符串至少有namelen个字符长。成功时,gethostname返回0,否则返回-1。
    uname系统调用可以获得关于主机的更多详细信息,uname函数把主机信息写入name参数指向的结构。utsname结构定义在头文件sys/utsname.h中,它至少包含如下图所示的成员

  3.  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值