메뉴 건너뛰기

NEOS 예제 코드

NEOS 쉘 명령어 추가 방법 (v5)

관리자 2018.05.29 14:07 조회 수 : 77

주의 : 본 기능은 NEOS V5에만 적용됩니다.

 

NEOS 쉘 명령어 리스트에 명령어를 등록 하는 방법입니다.

ShellAddGroup()  함수를 이용하여 명령어의 그룹을 추가할 수 있다.

명령어 그룹을 지정한 후에 ShellAddCmd() 함수를 이용하여 개별 명령어를 등록하여 사용할 수 있다.

아래 예제는 명령어 그룹을 생성하고 해당 명령어 그룹에 명령어를 등록하는 예제이다.

 

* 명령어 그룹 생성 및 명령어 등록

#include <sys/types.h>
#include <sys/param.h>
#include <sys/shell.h>

extern void ShellSample1Cmd(int argn, char *argv[]);

static ShellCmd TestCommand = \
    SHELL_CMD_ENTRY("test1", TgsSample1Cmd, "test1", "test command");

void ShellCommandInitialize(void)
{
    /* attach test commands */
    ShellAddGroup("test");

    ShellAddCmd("test", &TestCommand);
}

 

* 아규먼트가 없는 간단한 명령어

#include <sys/types.h>
#include <sys/shell.h>
#include <errno.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>

void ShellSample1Cmd(int argn, char *argv[]);
void ShellSample1CmdUsage(void);

/**
 * ShellSample1Cmd
 *
 * DESCRIPTION
 * This is a simple example of making shell command.
 * This will be the good start of making your own shell command.
 */

void ShellSample1Cmd(int argn, char *argv[])
{
    /* No arguments, simply print out mounted device */
    if (argn > 1)
    {
        ShellSample1CmdUsage();
        return;
    }

    printk("Sample Command 1.\n\r");
}


/**
 * ShellSample1CmdUsage - print out the usage
 *
 * DESCRIPTION
 *  This function prints out the usage.
 *
 */

void ShellSample1CmdUsage(void)
{
    printf("usage: test1\n");
}
 
위로