command.c

来自「Linux 0.01内核 T-Shell 比较完整的shell功能」· C语言 代码 · 共 44 行

C
44
字号
command(int i)
{
    int j, flag, inword;

    for (j = 0; j<MAXARG-1; ++j)
    {
        while (*lineptr==' ' || *lineptr=='\t')
            ++lineptr;

        cmdlin[i].av[j] = avptr;
        cmdlin[i].av[j+1] = NULL;

        for (flag = 0; flag==0;)
        {
            switch (*lineptr)
            {
            case '>':
            case '<':
            case '|':
            case '&':
            case '\n':
                if (inword==FALSE)
                    cmdlin[i].av[j] = NULL;

                *avptr++ = '\0';
                return;

            case ' ':
            case '\t':
                inword = FALSE;
                *avptr++ = '\0';
                flag = 1;
                break;

            default:
                inword = TRUE;
                *avptr++ = *lineptr++;
                break;
            }
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?