【发布时间】:2017-08-07 03:10:37
【问题描述】:
我对 PowerShell 还是很陌生。
我创建了一个 PowerShell 脚本,它根据特定标准从一个文件夹中大量非常相似的文件中识别出一个特定的 Mp3 文件:
- 是最近创建的文件吗
- 这是一个 MP3 文件
- 文件名中有一定的字符集。
然后将文件重命名为今天的日期,并在文件名中添加一些其他文本:
$AudioDir = "\\Server\Audio\"
$MediaDir = "\\Server2\Media\"
$LatestMP3 = Get-ChildItem -Path $AudioDir "*NEW.MP3" | Sort-Object CreationTime | Select-Object -Last 1
Get-ChildItem -path $AudioDir $LatestMP3 |Rename-Item -newname {(GET-DATE).ToString("yyyy-MM-dd") + " NewAUDIO.mp3"}
这部分工作完美,但下一步不行。我想将该重命名的文件复制到另一台服务器上的另一个文件夹 ($MediaDir = "\\Server2\Media\")
我在试管:
Get-ChildItem -path $AudioDir $LatestMP3 |Rename-Item -newname {(GET-DATE).ToString("yyyy-MM-dd") + " NewAUDIO.mp3"} | Copy-Item -destination $MediaDir
没有错误,文件按预期重命名,但 Copy-Item -destination $MediaDir 什么也不做。
任何帮助将不胜感激。
谢谢
【问题讨论】:
-
澄清一下:
Copy-Item步骤在 Powershell ISE 中有效,但在 CMD 或任务计划程序中无效?对于初学者,请尝试将-Verbose和-ErrorAction Stop添加到Copy-Item- 这应该会给您更详细的输出。 -
嗨,对不起,我现在编辑的标题具有误导性。问题是文件重命名后 copy-item -destination $MediaDir 不起作用
标签: powershell pipeline copy-item