过滤两个关键字,并提取之间的内容
时间:2011-11-07
来源:互联网
第一次发帖,不知道表达的对不对,目前刚接触操作系统,实验要求使用C语言做一个程序,需要一个死循环占用终端,并且可以执行类似ls、touch、cd等命令。现在不知道怎么实现ls命令额。。。特来求助各位高手 
不成熟的代码如下:

不成熟的代码如下:
代码:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <grp.h>
#include <signal.h>
#define SIGSTCP 20
void cd();
void dir();
int main(){
char buf[80],prompt[100];
char tmp[80];
memset(tmp, 0, sizeof(tmp));
char *username;
struct group *data;
data = getgrgid(getgid());
username = data->gr_name="WLLY";
strcat(tmp, "/home/");
strcat(tmp, username);
printf("-------------*Welcome*-------------\n");
while(1) {
getcwd(buf, sizeof(buf));
memset(buf, 0, sizeof(buf));
buf[0] = '~';
buf[1] = '\0';
sprintf(prompt,"%s:%s$", username, buf);
// printf("%s",prompt);
int c;
c=getchar();
if(c=='A')
cd();
else{
if (c=='B')
dir();
else
printf("%s",prompt);}
}
// strcat(prompt,username);
// strcat(prompt,":");
// strcat(prompt,buf);
// strcat(prompt,"$");
// printf("%s",prompt);
}
void cd(){
printf("hgrtgf");
printf("\n");
}
void dir(){
printf("gvryhdf");
printf("\n");
}
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <grp.h>
#include <signal.h>
#define SIGSTCP 20
void cd();
void dir();
int main(){
char buf[80],prompt[100];
char tmp[80];
memset(tmp, 0, sizeof(tmp));
char *username;
struct group *data;
data = getgrgid(getgid());
username = data->gr_name="WLLY";
strcat(tmp, "/home/");
strcat(tmp, username);
printf("-------------*Welcome*-------------\n");
while(1) {
getcwd(buf, sizeof(buf));
memset(buf, 0, sizeof(buf));
buf[0] = '~';
buf[1] = '\0';
sprintf(prompt,"%s:%s$", username, buf);
// printf("%s",prompt);
int c;
c=getchar();
if(c=='A')
cd();
else{
if (c=='B')
dir();
else
printf("%s",prompt);}
}
// strcat(prompt,username);
// strcat(prompt,":");
// strcat(prompt,buf);
// strcat(prompt,"$");
// printf("%s",prompt);
}
void cd(){
printf("hgrtgf");
printf("\n");
}
void dir(){
printf("gvryhdf");
printf("\n");
}
作者: 北_殇 发布时间: 2011-11-07
代码:
man 3 system
# or
man 2 fork
man 2 exec
# or
man 2 fork
man 2 exec
作者: lilydjwg 发布时间: 2011-11-07
lilydjwg 写道:
代码:
man 3 system
# or
man 2 fork
man 2 exec
# or
man 2 fork
man 2 exec
没看明白额

作者: 北_殇 发布时间: 2011-11-07
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28