📄 ysh.h
字号:
#define HISNUM 11
#define BUFSIZE 200
#define NO_PIPE -1#define FD_READ 0#define FD_WRITE 1
typedef struct ENV_HISTORY
{
int start;
int end;
char his_cmd[HISNUM][100];
}ENV_HISTORY;
typedef struct NODE
{
pid_t pid;
char cmd[100];
char state[10];
struct NODE *link;
}NODE;
char *envpath[10],buf[BUFSIZE],*input=NULL;
pid_t pid1=0;
int sig_flag=0,sig_z=0;
ENV_HISTORY envhis;
NODE *head,*end;
/*声明程序中用到的函数*/
void initEnviron(); //初始化环境变量
int redirect(char *,int); //重定向命令的处理
int pipel(char *,int); //管道命令的处理
int getLine(int,char *); //读取一行
int isFounded(char *); //查找命令
void setFlag(); //将标志位置1
void getEnviron(int,char *); //初始化查找路径
void addHistory(char *); //记录history命令
void addNode(char *,int); //向jobs命令的链表中增加节点
void delNode(int,siginfo_t *); //从jobs命令的链表中删除节点
void history_cmd(); //显示history命令
void cd_cmd(char *); //处理cd命令
void jobs_cmd(); //处理jobs命令
void bg_cmd(int); //处理bg命令
void fg_cmd(int); //处理fg命令
void ctrl_z_cmd(); //处理用户按下ctrl+z命令
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -