| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- /**
- * @file shell_cmd_list.c
- * @author Letter (NevermindZZT@gmail.com)
- * @brief shell cmd list
- * @version 3.0.0
- * @date 2020-01-17
- *
- * @copyright (c) 2020 Letter
- *
- */
- #include "shell.h"
- #include "elog.h"
- #if SHELL_USING_CMD_EXPORT != 1
- extern int shellSetVar(char *name, int value);
- extern void shellUp(Shell *shell);
- extern void shellDown(Shell *shell);
- extern void shellRight(Shell *shell);
- extern void shellLeft(Shell *shell);
- extern void shellTab(Shell *shell);
- extern void shellBackspace(Shell *shell);
- extern void shellDelete(Shell *shell);
- extern void shellEnter(Shell *shell);
- extern void shellHelp(int argc, char *argv[]);
- extern void shellUsers(void);
- extern void shellCmds(void);
- extern void shellVars(void);
- extern void shellKeys(void);
- extern void shellClear(void);
- #if SHELL_EXEC_UNDEF_FUNC == 1
- extern int shellExecute(int argc, char *argv[]);
- #endif
- SHELL_AGENCY_FUNC(shellRun, shellGetCurrent(), (const char *)p1);
- void shellLogTest(int argc, char *argv[])
- {
- log_i("run shell test.");
- }
- /**
- * @brief shell命令表
- *
- */
- const ShellCommand shellCommandList[] =
- {
- {.attr.value=SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_USER),
- .data.user.name = SHELL_DEFAULT_USER,
- .data.user.password = SHELL_DEFAULT_USER_PASSWORD,
- .data.user.desc = "default user"},
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC),
- setVar, shellSetVar, set var),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0), 0x1B5B4100, shellUp, up),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0), 0x1B5B4200, shellDown, down),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x1B5B4300, shellRight, right),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x1B5B4400, shellLeft, left),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0), 0x09000000, shellTab, tab),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x08000000, shellBackspace, backspace),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x7F000000, shellDelete, delete),
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x1B5B337E, shellDelete, delete),
- #if SHELL_ENTER_LF == 1
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x0A000000, shellEnter, enter),
- #endif
- #if SHELL_ENTER_CR == 1
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x0D000000, shellEnter, enter),
- #endif
- #if SHELL_ENTER_CRLF == 1
- SHELL_KEY_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_ENABLE_UNCHECKED,
- 0x0D0A0000, shellEnter, enter),
- #endif
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_MAIN)|SHELL_CMD_DISABLE_RETURN,
- help, shellHelp, show command info\r\nhelp [cmd]),
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_DISABLE_RETURN,
- users, shellUsers, list all user),
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_DISABLE_RETURN,
- cmds, shellCmds, list all cmd),
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_DISABLE_RETURN,
- vars, shellVars, list all var),
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_DISABLE_RETURN,
- keys, shellKeys, list all key),
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_DISABLE_RETURN,
- clear, shellClear, clear console),
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC)|SHELL_CMD_DISABLE_RETURN,
- sh, SHELL_AGENCY_FUNC_NAME(shellRun), run command directly),
- #if SHELL_EXEC_UNDEF_FUNC == 1
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_MAIN)|SHELL_CMD_DISABLE_RETURN,
- exec, shellExecute, execute function undefined),
- #endif
- SHELL_CMD_ITEM(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_MAIN)|SHELL_CMD_DISABLE_RETURN,
- log_test, shellLogTest, shell log test),
- };
- /**
- * @brief shell命令表大小
- *
- */
- const unsigned short shellCommandCount
- = sizeof(shellCommandList) / sizeof(ShellCommand);
- #endif
|