На самом деле то, что вы видите здесь, - это проблема выяснения, когда одна переменная останавливается, а следующая запускается. Он пытается найти $ baseName _.
Исправление заключается в том, чтобы заключить переменные в фигурные скобки:
$baseName = "base"
[int]$count = 1
$ext = ".ext"
$fileName = "$baseName$count$Ext"
#filename evaluates to "base1.ext" -- expected
#now the wierd part -- watch for the underscore:
$fileName = "$baseName_$count$Ext"
#filename evaluates to "1.ext" -- the basename got dropped, what gives?
$fileName = "${baseName}_${count}${Ext}"
# now it works
$fileName
Надеюсь, это поможет