背景
最近注册了50GB box account我上传了我的电脑的照片集。但是,我的大多数目录都包含子目录,其文件大于允许的单个文件上载限制 250MB 。因此需要做一些准备工作
我搜索了期望看到robocopy
解决方案的问题,但是Jugal Shah找到了这个有趣的powershell
脚本。基于我以前不存在的powershell
知识,我安装了必要的文件,用Google搜索了一下,然后将下面的脚本混合在一起,这些脚本用于我的基本测试。
问题
在我对我的宝贵实际文件进行操作之前,我有几个问题(支持是,但始终保持谨慎)。
powershell
中完成? 脚本
#Mention the path to search the files
$path = "c:\temp"
##Find out the files greater than equal to below mentioned size
$size = 249MB
##Limit the number of rows
$limit = 10000
##Find out the specific extension file
$Extension = "*.*"
##script to find out the files based on the above input
get-ChildItem -path $path -recurse -ErrorAction "SilentlyContinue" -include $Extension | ? { $_.GetType().Name -eq "FileInfo" } | where-Object {$_.Length -gt $size} | Move-Item -Destination C:\misc
我的目录结构(第一级)
答案 0 :(得分:3)
一些建议。
使用烟斗时,您可以转到下一行以便于阅读。
get-ChildItem $path -recurse -ErrorAction "SilentlyContinue" -include $Extension |
Where-Object { !($_.PSIsContainer) -and $_.Length -gt $size } |
ForEach-Object {
Write-Output "$($_.fullname) $($_.Length / 1Mb)"
Move-Item $_.fullname C:\misc -whatif
}
答案 1 :(得分:1)
我非常支持使用PowerShell尽我所能。但是,在这些类型的操作上没有任何东西可以胜过robocopy!以下是Robocopy语法的TechNet Article。请密切注意文件选择选项部分,您可以在其中介绍/ max:参数,您可以在其中指定最大文件大小。因此,在您的实例中,您需要指出:/ max: 262144000以便您获得小于250 MB的所有文件。