• 大小: 30.18 KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-08-16
  • 语言: 其他
  • 标签: C  linux  shell  实现  

资源简介

自己实现的简易shell , 实现了多重管道、重定向、前后台转换等<br>用了lex

资源截图

代码片段和文件信息

%{
int _numargs = 10;
char *_args[10];
int _argcount = 0;
%}

QUOTE \“[^\“]*\“
WORD [a-zA-Z0-9\/\.-]+
SPECIAL [()><|&;*]

%%
_argcount = 0;
_args[0] = NULL;

{QUOTE}|{WORD}|{SPECIAL} {
  if(_argcount < _numargs-1) {
    _args[_argcount++] = (char *)strdup(yytext);
    _args[_argcount] = NULL;
  }
}

\n return (int)_args;

[ \t]+

.

%%

char **getline() {
  return (char **)yylex();
}

int yywrap(){
return 0;
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        455  2008-04-17 11:11  MyShell\lex.c

     文件      43917  2008-04-17 11:11  MyShell\lex.yy.c

     文件      21359  2007-03-27 19:19  MyShell\myshell

     文件       8074  2007-03-30 12:22  MyShell\myshell.c

     文件      21428  2008-04-17 11:12  MyShell\shell

     目录          0  2008-05-09 10:25  MyShell

----------- ---------  ---------- -----  ----

                95233                    6


评论

共有 条评论