gpt4 book ai didi

powershell - 如何强制声明的参数需要显式命名?

转载 作者:行者123 更新时间:2023-12-04 00:44:04 25 4
gpt4 key购买 nike

我很难想通这件事。如果我希望所有声明的参数在设置时都需要显式命名,并且我想从 $args 变量中获取任何未命名的内容,我该怎么做?

如果我的脚本声明了以下参数:

param($installdir, $compilemode, $whatever) 

然后传递文件列表(在这种情况下我不想指定安装目录、编译模式等),前三个参数会占用我的参数。所以,我想通过:
c:\> MyScript file-1.cs file-2.cs file-3.cs file-4.cs 

并让所有 4 个字符串出现 $args,或者调用:
c:\> MyScript -CompileMode simple file-1.cs -InstallDir c:\temp file-2.cs

并使用包含 2 个文件的 $args 获取 $compilemode 和 $installdir 的值......我该怎么做?

最佳答案

好的,想通了。像这样声明:

param(
$installdir,
$compilemode,
$whatever,
[Parameter(Position=0, ValueFromRemainingArguments=$true)] $args
)

感谢@latkin,他已经在以下地址回答了这个问题: Powershell non-positional, optional params

关于powershell - 如何强制声明的参数需要显式命名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18861701/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com