如何将 powershell 函数的输出作为参数传递给命令?
我认为一个非常简单的命令没有成功:
git checkout -b SimplifyName("Test 1")
Run Code Online (Sandbox Code Playgroud)
输出是一个错误:
fatal: 'Test 1' is not a commit and a branch 'SimplifyName' cannot be created from it
Run Code Online (Sandbox Code Playgroud)
为了这个问题,
function SimplifyName ([string] $str = "UNDEFINED") {
$result = $str.Trim().ToLowerInvariant() -replace "[^a-z0-9]+","_"
Write-Output $result
}
Run Code Online (Sandbox Code Playgroud)
据我了解,后面的任何内容都-b被视为git checkout -b命令的空格分隔的字符串参数。
我也正在努力寻找一个好的帮助资源,因为我可能使用了不正确的术语。
$()是一个子表达式运算符,它的意思是“首先评估它,然后将其作为独立语句单独执行”。
这里它用于评估函数,然后将其输出用于命令git:
git checkout -b $(SimplifyName "Test 1")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
424 次 |
| 最近记录: |