답변:
이것은 작동해야합니다.
Get-ChildItem "c:\test\*.txt" | ForEach-Object {
Rename-Item $_.FullName "$BackupFolder$($_.BaseName -replace " ", "_" -replace '\..*?$')$(Get-Date -Format "ddMMyyyy").txt"
당신의 대시는 바로 전에오고있었습니다 $(Get-Date. 큰 따옴표로 묶은 것을 매개 변수로 전달할 때 변수가 아니거나 괄호 안에없고 앞에 오는 $것은 문자열 문자로 취급됩니다.
아래 스크립트에서 :
$test='test';"$test-$(Get-Date -F 'ddMMyyyy')"
$test값으로 확장된다 'test', -이 변수 나 식의 부분도이고, 이후 방치 될 Get-Date -F 'ddMMyyyy'처리가 갖는 식으로 구별되기 때문에, 그 출력을 리턴한다 $(... ). 결과는 다음과 같습니다.
test-24112013
대시를 제거하고 ...
$test='test';"$test-$(Get-Date -F 'ddMMyyyy')"
.... 출력 ...
test24112013