我希望能够将格式化的字符串输出到控制台。我有一个字符串变量和一个字符串数组变量。
当我执行以下操作时:
输出结果如下:
但是我需要输出为:
或者类似的东西...
当我执行以下操作时:
$arr = "aaa","bbb"
"test {0} + {1}" -f "first",$arr
输出结果如下:
test first + System.Object[]
但是我需要输出为:
test first + aaa,bbb
或者类似的东西...
-f
只是String.Format()
的一种简单便利方式,它在这方面使用与 .NET 相同的语义。字符串插值是一个棘手的问题,因为它使用不变文化(显然)将对象转换为字符串;它还使用$OFS
连接数组。总的来说,我现在不太自信能够准确地概括出确切的差异。有趣的事情:$a = (date),(date),(date); Write-Host $a; Write-Host "$a"
- Joey