这是我的问题:
function Dummy ($path1, $fileName1) {
Write-Host "$path1$fileName1"
}
Dummy 'folder\', 'test2.exe'
结果是:
folder\ test2.exe
我只是不知道为什么要添加这个空格。
我尝试了不同的格式选项(修剪、字符串格式,甚至没有结果的原生 .net 格式)。
正则表达式作为“发布问题”工作,但对我的使用来说太极端了(名称中有空格的文件夹)
请注意,我尝试过的那些选项可以完美地工作(或者我应该说“如预期的那样”-_-')OUT 的功能。
如果有人能告诉我我有多愚蠢,我会很高兴-_-'
注意:我一直在这个线程的第一行添加一个简单的“hi”,它每次都会被删除,对此感到抱歉。
最佳答案
这是因为即使看起来那样,您也没有发送两个参数。当您使用逗号时,您实际上是在发送一个数组。所以$path
将是一个数组,其值为 'folder\'
和 'test2.exe'
.当然还有 $fileName1
将是空的。
所以当你转换 $path
对于字符串,值将用空格分隔。
从通话中删除逗号,它将起作用:
Dummy 'folder\' 'test2.exe'
作为旁注:我不太确定您要做什么。但是,如果您想创建路径,我建议您使用:
Join-Path "folder" "test2.exe"
关于string - Powershell,函数在连接字符串(参数)时添加尾随空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59528560/