Powershell 在文件夹名称中附加日期和时间

Powershell 在文件夹名称中附加日期和时间

我正在尝试使用 powershell 将日期和时间附加到文件夹。假设文件夹名称始终相同,因此我可以将其存储在 power shell 脚本中的变量中。例如:$myfolder = "default_folder"

我使用 get-date 和 gettime 查找当前日期/时间并将其存储在 $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}

相关内容