Ruiyu Ni 7534ae58f4 ShellPkg: Add a simple case to test shell parameter parsing logic
TestArgv.nsh is a very simple shell script to test how the interpreter parses
the parameters. It uses ShellCTestApp.efi to dump the parameters passed from the
interpreter.

TestArgv.log is the desired output created using "TestArgv.nsh > TestArgv.log".

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18558 6f19259b-4bc3-4df7-8a09-765794883524
2015-09-29 06:35:33 +00:00

45 lines
3.2 KiB
Plaintext

FS0:\> echo -on
FS0:\> set Var_EFCF356F_228C_47C2_AD0C_3B5DAC9A8CFA ValueOfGuid
FS0:\> set Sharp_E8528E46_A008_4221_8DE0_D5AB42A9C580 ^#
FS0:\> set Quote_E95DEE8B_E3AA_4155_9ED5_6916394104FC ^"
FS0:\> set Var_ShellCTestApp_EE6E8BC6_71A6_44A5_BED3_D8F901105CDE ShellCTestApp_EE6E8BC6_71A6_44A5_BED3_D8F901105CDE
FS0:\> alias ShellCTestApp_EE6E8BC6_71A6_44A5_BED3_D8F901105CDE ShellCTestApp
FS0:\> ShellCTestApp ^^
Argv[1]: "^"
FS0:\> ShellCTestApp ^#
Argv[1]: "#"
FS0:\> ShellCTestApp ^%Var_EFCF356F_228C_47C2_AD0C_3B5DAC9A8CFA%
Argv[1]: "%Var_EFCF356F_228C_47C2_AD0C_3B5DAC9A8CFA%"
FS0:\> ShellCTestApp ^"
Argv[1]: """
FS0:\> ShellCTestApp ^ 1
Argv[1]: " 1"
FS0:\> ShellCTestApp ^
Argv[1]: ""
FS0:\> ShellCTestApp ^1
Argv[1]: "1"
FS0:\> ShellCTestApp ^^^"
Argv[1]: "^""
FS0:\> ShellCTestApp ^^^
Argv[1]: "^"
FS0:\> ShellCTestApp
Argv[1] = NULL
FS0:\> ShellCTestApp %Sharp_E8528E46_A008_4221_8DE0_D5AB42A9C580%
Argv[1]: "#"
FS0:\> ShellCTestApp "%Var_EFCF356F_228C_47C2_AD0C_3B5DAC9A8CFA% 2%Quote_E95DEE8B_E3AA_4155_9ED5_6916394104FC%
Argv[1]: "ValueOfGuid 2"
FS0:\> %Var_ShellCTestApp_EE6E8BC6_71A6_44A5_BED3_D8F901105CDE%
Argv[1] = NULL
FS0:\> ShellCTestApp "p 1"
Argv[1]: "p 1"
FS0:\> ShellCTestApp "p"1
Argv[1]: "p1"
FS0:\> ShellCTestApp "p 1"e"x"""
Argv[1]: "p 1ex"
FS0:\> set -d Var_EFCF356F_228C_47C2_AD0C_3B5DAC9A8CFA
FS0:\> set -d Sharp_E8528E46_A008_4221_8DE0_D5AB42A9C580
FS0:\> set -d Quote_E95DEE8B_E3AA_4155_9ED5_6916394104FC
FS0:\> set -d Var_ShellCTestApp_EE6E8BC6_71A6_44A5_BED3_D8F901105CDE
FS0:\> alias -d ShellCTestApp_EE6E8BC6_71A6_44A5_BED3_D8F901105CDE
FS0:\> echo -off