我有一个家庭作业问题,我无法完成它:
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
答案 0 :(得分:0)
你这里并没有真正使用管道......:
Move-Item dir3 .\dir1\ -PassThru | Get-ChildItem |
where { ! $_.PsIsContainer } |
Rename-Item -NewName { $_.Name + ".unu" }
移动项目将为您处理移动文件夹,使用PassThru,您将获得要播放的新对象...将其移植到Get-ChildItem将返回其中的内容(可以考虑添加-recurse there ...) 。 将过滤掉目录的位置(仅要求您重命名文件),Rename-Item将绑定所有文件,并根据请求重命名。
有人想为此写一个剧本......? :○