2017-06-02 100 views
-1

我找到了一个PowerShell脚本,能够将'n'个文件从'D:\ source'移动到'E:\ Dest'目录。它将采用源文件夹中第一个“n”个文件并将它们移动到指定的子文件夹。只要需要,它可以创建文件夹。使用PowerShell在“分离文件夹”中移动“n”个文件

代码:

$filesperfolder = 150 
$sourcePath = "D:\source" 
$destPath = "E:\Dest" 
$i = 0; 
$folderNum = 1; 


Get-ChildItem "$sourcePath\*.jpg" | % { 

    New-Item -Path ($destPath + "\" + $folderNum) -Type Directory -Force 
    Move-Item $_ ($destPath + "\" + $folderNum); 

    $i++; 

    if ($i -eq $filesperfolder){ 
     $folderNum++; 
     $i = 0 ; 
    } 
} 

到目前为止,这个脚本工作正常,但,我怎么设置其工作目录。我的意思是,如果脚本位于'C:\ test'文件夹中,那么它应该搜索当前文件夹中的'* .jpg'文件并在同一目录中创建文件夹。

+0

对不起,但SO不是一个脚本写作服务。我们是志愿者,帮助程序员和编程爱好者。我建议你将你的要求分解成单独的部分并进行测试。如果您在某个特定问题上遇到困难,请提供和[mvce]您正在做的事情,我们将很乐意帮助您。 – Matt

+0

不好意思问这样的问题。我认为这会对别人有所帮助。 – ScareCrow

+0

你要求别人先制作你的剧本,而不要自己先尝试...... – Manu

回答

0

虽然它可以由C操作:\测试,你还是提供完整的地址到其他地方那么只要它可以访问和权限,以在d这些文件:\来源和E:\目的地,也不会触摸与C:\ Test有关的任何内容,除了从该位置运行。你的意图是什么,你其实并没有要求我们提供任何帮助。

如果你想设置你会使用这个工作目录:

Set-Location "D:\SourceFiles" 

这样,无论你来自哪里,开始你的脚本,它会从“:\ SourceFiles d”工作。

相关问题