Rename-item 认为变量是路径

Posted

技术标签:

【中文标题】Rename-item 认为变量是路径【英文标题】:Rename-item thinks variable is a path 【发布时间】:2014-07-08 10:08:53 【问题描述】:

我正在尝试重命名一个文件,但 powershell 认为我的变量是一个字符串并且失败了。

这是脚本:

$date=(get-date -Format d)
$time=(get-date -Format t)
$source = "D:\_qapi.log"
$newfilename = "$date"+"_"+"$time"+"_qapi[SERVERNAME].log"

Rename-Item $source -NewName $newfilename

这是错误:

Rename-Item : Cannot rename because the target specified represents a path or device name.

有人知道我可以解决这个问题吗?由于某种原因,powershell 将 $newfilename 中的 $date 变量视为路径。

【问题讨论】:

【参考方案1】:

日期时间字符串中的非法字符。

这行得通:

$date=(get-date -Format d) -replace("/")
$time=(get-date -Format t) -replace(":")
$source = "D:\_qapi.log"
$newfilename = "$date"+"_"+"$time"+"_qapi[$env:Computername].log"

Rename-Item $source -NewName $newfilename

【讨论】:

以上是关于Rename-item 认为变量是路径的主要内容,如果未能解决你的问题,请参考以下文章

conemu 和 console2 模拟器没有获得新的路径变量

如何在弹性豆茎中设置/更新 PATH 变量?

永久设置环境路径

为啥静态变量被认为是邪恶的?

修改Jenkins默认/root/.jenknins路径

路径分析是啥