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
This commit is contained in:
Ruiyu Ni
2015-09-29 06:35:33 +00:00
committed by niruiyu
parent 30634ed870
commit 7534ae58f4
4 changed files with 75 additions and 5 deletions

View File

@@ -2,7 +2,7 @@
This is a test application that demonstrates how to use the C-style entry point
for a shell application.
Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -40,10 +40,11 @@ ShellAppMain (
)
{
UINTN Index;
Print(L"ShellCTestApp.c:ShellAppMain called with %d parameters\n", Argc);
for (Index = 0; Index < Argc; Index++) {
Print(L"Argv[%d]: %s\n", Index, Argv[Index]);
if (Argc == 1) {
Print (L"Argv[1] = NULL\n");
}
for (Index = 1; Index < Argc; Index++) {
Print(L"Argv[%d]: \"%s\"\n", Index, Argv[Index]);
}
return 0;