首先,这是我第一次提出问题,因为我找不到答案。抱歉,如果它已经发布(或类似的东西)并且我看不到它,或者它的样式不正确。
摘要::我以前从未尝试过批处理,但是我需要它来简化我的生活以便移动一些图像。我之前尝试过一些bash,所以尽管它可能与我发现的结果相似:
ECHO OFF
REM extension should be .bat
FOR /L %%x IN (0,1,23) DO mkdir C:\Users\UB\Documents\%%x
REM so now folders should be created, each with the name X, X from 0 to 23
REM wanna put images on the folders
REM images are on the patch Documents\Data\Images\Y.
REM Being Y something like that : 12/2016/04/20/112844.jpg
i had a .txt with a list of the images path Y space Z,
where Z is the number of the folder i want them to be,
as an example: 12/2016/04/20/112844.jpg 17
ECHO "done"
我想要的是:这个想法是创建23个名称从0到23的文件夹。 之后,我想读取.txt并将每个图像移动到根据.txt文件对应的文件夹中。 如您所见,我没有做太多事情,因此不胜感激。
更新:所以现在我可以创建文件夹了,唯一的帮助就是读取.txt并将图像复制到新文件夹中。
还有一些其他问题:
更新2:我运行下面的代码,其中一个用户提供了尝试进行修改的代码,但是在运行该代码时却出现错误,提示说sintaxis或提供的名称错误。
mkdir C:\Users\UB\Documents\Activities
FOR /L %%x IN (0,1,23) DO mkdir C:\Users\UB\Documents\Activities\%%x
for /F "usebackq tokens=1,2" %%I in ("annotations.txt") do move /C:\Users\UB\Documents\dades\images\%%I C:\Users\UB\Documents\Activities\%%J
可能是:我有问题,因为.txt中有10/2016/06/01/132316.jpg 17
和10/2016/06/01/132216.jpg 8
吗?就像一个目的地有一个数字文件夹,一个有两个数字一个
我的.txt是这样的:
10/2016/06/01/132316.jpg 17
10/2016/06/01/132348.jpg 19
10/2016/06/01/132420.jpg 11
10/2016/06/01/132452.jpg 19
10/2016/06/01/132524.jpg 17
10/2016/06/01/132556.jpg 17
10/2016/06/01/132628.jpg 17
差不多有1000行