我对PowerShell脚本非常陌生。正在尝试从网络学习。现在,我正在尝试编写一个脚本并遇到一些问题,所以需要你们的帮助和建议。我将描述我尝试做的事情:
首先,我声明了两个变量,然后使用了if语句来查看变量是否为空,如果为空,则会显示警告消息,并要求用户输入并显示变量的值。但是它会出现一些错误。
$workingdirectory = args[0]
$directoryname = args[1]
if ("$WorkingDirectory" -eq "")
{
Write-Warning "Parameter Required"
$WorkingDirectory = Read-Host "Enter the absolute path to working directory "
}
if ("$DirectoryName" -eq "")
{
Write-Warning "Paramater Required"
$DirectoryName = Read-Host "Enter a directory name to search for in $WorkingDirectory "
}
Write-Host "$WorkingDIrectory"
write-host "$DirectoryName"
当我运行脚本时,它显示以下错误:
ARGS [0]:未识别“ARGS [0]”作为 cmdlet、函数、脚本文件或可操作程序的名称。请检查名称的拼写,如果包括路径,请验证路径是否正确,然后重试。 位于 C:\LAB_5-submission\mmbillah1_Lab_testdir.ps1:24 字符:21 + $WorkingDirectory = ARGS [0] + ~~~~~~~ + CategoryInfo :ObjectNotFound:(ARGS [0]:String) [],CommandNotFoundException + FullyQualifiedErrorId :CommandNotFoundException
ARGS [1]:未识别“ARGS [1]”作为 cmdlet、函数、脚本文件或可操作程序的名称。请检查名称的拼写,如果包括路径,请验证路径是否正确,然后重试。 位于 C:\LAB_5-submission\mmbillah1_Lab_testdir.ps1:25 字符:18 +$DirectoryName = ARGS [1] + ~~~~~~~ + CategoryInfo :ObjectNotFound:(ARGS [1]:String) [],CommandNotFoundException + FullyQualifiedErrorId :CommandNotFoundException
我想像这样运行:
.\scriptname.ps1
,如果我使用这个命令,它会显示警告并提示输入两个变量。如果我运行 .\scriptname.ps1 C:\users\masum
,则只会要求第二个变量的值。