Powershell移动目录并添加扩展名

时间:2012-05-31 06:32:21

标签: powershell copy-item

我有一个家庭作业问题,我无法完成它:
Write a shell that has two folder names as parameters and moves the second folder as subfolder of the first one and adds '.unu' to all filenames in that second folder.

这是我写的,但它不起作用:

gci D:\powershell\dir2 | foreach-object{ ren -new ($_.Name + ".unu")} 

Copy-Item -Recurse D:\powershell\dir2.unu D:\powershell\dir2

Remove-Item -Recurse D:\powershell\dir2.unu

您也可以看到我在D:\powershell 2个文件夹中创建,我想在dir2中移动dir1

1 个答案:

答案 0 :(得分:0)

你这里并没有真正使用管道......:

Move-Item dir3 .\dir1\ -PassThru | Get-ChildItem | 
    where { ! $_.PsIsContainer } | 
    Rename-Item -NewName { $_.Name + ".unu" }

移动项目将为您处理移动文件夹,使用PassThru,您将获得要播放的新对象...将其移植到Get-ChildItem将返回其中的内容(可以考虑添加-recurse there ...) 。 将过滤掉目录的位置(仅要求您重命名文件),Rename-Item将绑定所有文件,并根据请求重命名。

有人想为此写一个剧本......? :○