
Я пытаюсь добавить дату и время в папку с помощью powershell. Допустим, имя папки всегда одинаковое, поэтому я могу сохранить его в переменной в моем скрипте power shell. Например: $myfolder = "default_folder"
Я использую get-date и get-time, чтобы найти текущую дату/время и сохранить их в $file_date и $file_time
Использование Rename-Item, похоже, не работает.
Rename-Item "$myfolder" "$myfolder"_"$file_date"_"$file_time"
Я получаю следующую ошибку:
Rename-Item : A positional parameter cannot be found that accepts argument '_20210722_1157'.
At line:1 char:1
+ Rename-Item "$myfolder" "$myfolder"_"$file_date"_"$file_time"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Rename-Item], ParameterBindingException
+ FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Com
решение1
В результате объединения строк после default_folder появился пробел:
❯ $myfolder = "default_folder"
❯ $file_date = "20210722"
❯ $file_time = "1157"
❯ write-host "$myfolder"_"$file_date"_"$file_time"
default_folder _20210722_1157
Попробуйте вместо этого использовать этот аргумент для переименования${myfolder}_${file_date}_${file_time}
❯ write-host ${myfolder}_${file_date}_${file_time}
default_folder_20210722_1157
Rename-Item -Path ${myfolder} -NewName ${myfolder}_${file_date}_${file_time}