shell中使用的函数1

1.函数名: fflush#
原型:int fflush(FILE *stream)
功能:清除文件缓冲区
返回值:如果成功刷新,fflush返回0。指定的流没有缓冲区或者只读打开时也返回0值。返回EOF指出一个错误。
2.函数名:strtok#
原型:char *strtok(char s[], const char *delim);
分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。如果s为空值NULL,则函数保存的指针SAVE_PTR在下一次调用中将作为起始位置。当strtok()在参数s的字符串中发现参数delim中包含的分割字符时,则会将该字符改为\0 字符。
返回值:在第一次调用时,strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL。每次调用成功则返回指向被分割出片段的指针。当s中的字符查找到末尾时,返回NULL。如果查找不到delim中的字符时,返回当前strtok的字符串的指针。
strtok函数会破坏被分解字符串的完整,调用前和调用后的s已经不一样了。如果要保持原字符串的完整,可以使用strchr和sscanf的组合等。(注:Linux内核2.6.29,说明了这个函数已经不再使用,由速度更快的strsep()代替。)
3.函数名:getcwd()
原型:char *getcwd(char *buf, size_t size);
头文件:unistd.h(windows下为direct.h)
功 能:获取当前工作目录,将当前工作目录的绝对路径复制到参数buffer所指的内存空间中,参数size为buffer的空间大小。
返 回 值:成功则返回当前工作目录,失败返回 FALSE。
4.函数名:getuid()
原型:uid_t getuid(void);
头文件:#include
说明:uid_t定义在头文件sys/types.h中,它通常是一个小整形。
返回值:返回一个调用程序的真实用户ID
5.函数名:getpwuid()
原型:struct passwd getpwuid(uid_t uid);
功能:通过用户的uid查找用户的passwd数据。如果出错时,它们都返回一个空指针并设置errno的值,用户可以根据perror函数查看出错的信息。
头文件:#include
备注 :
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; /*real name /
char
pw_dir; /*home directory /
char
pw_shell; /*shell program */
};
6.函数名:chdir()
功能: 一个系统调用函数(同cd),用于改变当前工作目录,其参数为Path 目标目录,可以是绝对目录或相对目录。
头文件:#include
原型:int chdir(const char *path);
返回值:成功返回0 ,失败返回-1
7.函数名:strstr)
原型:strstr(str1,str2)
str1: 被查找目标 ;str2: 要查找对象
返回值:若str2是str1的子串,则返回str2在str1的首次出现的地址;如果str2不是str1的子串,则返回NULL。

你可能感兴趣的:(shell中使用的函数1)