Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 批处理文件以从文件夹复制文件&;仅当文件大小大于时使用文件列表的子文件夹_Database_Batch File_Size_Jpeg_Xcopy - Fatal编程技术网

Database 批处理文件以从文件夹复制文件&;仅当文件大小大于时使用文件列表的子文件夹

Database 批处理文件以从文件夹复制文件&;仅当文件大小大于时使用文件列表的子文件夹,database,batch-file,size,jpeg,xcopy,Database,Batch File,Size,Jpeg,Xcopy,我们的数据库中有仓库库存的图像。 我们将把这些图像的文件名列表拉入一个.txt文件 例如,file-list.txt的内容如下: 060128412948.jpg 068912475982.jpg etc. 我们有3张图片,其中2张是低分辨率的,1张是高分辨率的 我需要的脚本仅复制文件夹/子文件夹中每个股票的高分辨率图像到一个母目录 这是我到目前为止所拥有的,但这只是从源目标文件夹复制文件列表中列出的文件 @echo off set src_folder=C:\Users\jakub.par

我们的数据库中有仓库库存的图像。 我们将把这些图像的文件名列表拉入一个.txt文件

例如,file-list.txt的内容如下:

060128412948.jpg
068912475982.jpg
etc.
我们有3张图片,其中2张是低分辨率的,1张是高分辨率的

我需要的脚本仅复制文件夹/子文件夹中每个股票的高分辨率图像到一个母目录

这是我到目前为止所拥有的,但这只是从源目标文件夹复制文件列表中列出的文件

@echo off

set src_folder=C:\Users\jakub.parszewski\Desktop\TT\SalesOrders\NewOrder
set dst_folder=C:\Users\jakub.parszewski\Desktop\TT\Test
set file_list=C:\Users\jakub.parszewski\Desktop\TT\File-list.txt

set maxbytesize=300000

for /f "delims=" %%A in (%file_list% do set size=%%~zA

for /f "delims=" %%f in (%file_list%) do (
    if %size% GTR %maxbytesize% 
    xcopy "%src_folder%\%%f" "%dst_folder%\"
)

pause

当您考虑实现更健壮方法的可能更好的方法时,下面是一个使用类似于您最初意图的方法的
For
循环示例

@Echo关闭
设置“src\u文件夹=%UserProfile%\Desktop\TT\SalesOrders\NewOrder”
设置“dst\U文件夹=%UserProfile%\Desktop\TT\Test”
设置“文件列表=%UserProfile%\Desktop\TT\file list.txt”
设置“maxbytesize=3000”
对于/F“UseBackQ Delims=“%A In”(%file\u list%”)中的/F%%B执行(
'其中/T/F“%src_folder%”:“%%~nxA”2^>Nul'
)如果%%B Gtr%maxbytesize%复制“%src\u folder%\%%~nxA”“%dst\u folder%”Nul,则执行此操作
暂停

我使用了
Copy
,因为您的
XCopy
示例没有使用基本副本以外的任何选项。

这是因为您只执行了1,您需要添加2。&3.在
xcopy
之前。我很怀疑,在这个网站上,没有任何文件大小检查未被纳入的
for
循环的例子。你能进一步解释一下吗?我在这方面没有太多经验,即使是寻找答案也没有给我任何实际的效果。我的经理要求我这样做是为了工作。如果你搜索这个网站,或者使用搜索引擎,你会发现许多从
for
循环中确定文件大小的方法示例。您也可以在命令提示符窗口中键入
for/?
,然后读取输出的数据。谢谢Compo,我一直在搜索和玩一些游戏,但对于新手来说,这似乎没有什么用处。我已经更新了我的问题中的代码,我是离我所在的地方更近了还是我只是偏离了我所需要的?问题是我需要脚本首先从file-list.txt中获取文件名,然后检查该文件的大小。如果大小大于任意值,则xcopy如果大小小于任意值,则忽略。您能否提供File-list.txt中包含内容的示例,并向我们解释列表是如何生成的。您提供的信息越多,就越有可能得到您满意的解决方案。(您最初的问题是关于大于2MB的jpeg文件,但是您的代码建议使用销售订单和0.2861MB的文件大小)。