2013-10-08 41 views
1

我们一直有一些问题,人们已经把文件放入错误的作业编号的文件夹。文件664585_custnum_qty_filetype.dat应该在文件夹664585我正在寻找一种方法来确保给定文件夹中的文件都以文件夹名称开头。我一直在努力。正确的文件位置

@ECHO OFF 
FOR /R "V:\Work" %%G in (.) DO (
Pushd %%G 
REM Echo now in %%G 
for %%a in (.) do set currentfolder=%%~na 
    echo %currentfolder% 
    REM this is where I would be finding files that dont start the right way. 
Popd) 
Echo "back home" 
Pause 

努力,我已经看到了iterating through foldersfinding current directory name

最后我想列出所有错了位置的文件,以便我能找到他们,并找出他们为什么”等两件事情结合起来不/谁把他们放在那里。所以我想有一个程序,将V:\work中的所有文件夹迭代到665485332185 CustName等文件夹中,显示的文件不分别以665485332185开头。

我的系统上有cygwin,虽然没有启用,并且正在考虑ls,直接引用C:\cygwin\bin\ls.exe以避免它抛出一些具有相同名称的MS命令的正常功能。

有关如何获取不以文件夹名中的数字开头的文件列表的任何建议?

回答

1
@echo off 
for /d %%i in (*) do (if "%%i" NEQ "xArchive" (for /f %%j in ("%%i") do (dir "%%i" /b|for /f %%k in ('find "%%j" /v') do @dir "%%k" /b /s|find "thumbs.db" /v /i|find "xArchive" /v /i)) 

把它放在包含编号文件夹的目录中并在那里运行。我会在几个小时后回来如果你需要我改变它。 ;)

+0

这工作就像一个魅力。我收到了几个“文件未找到”错误,但它也吐出了我所需要的。我做的一个小改变是,因为我试图以自动的方式运行它,所以我将输出导向到一个'zzz.txt'文件(它也具有删除“File Not Found”的副作用,因为它是错误文本),然后将该文件作为附件发送给我自己。 – PsychoData

+0

我唯一的愿望就是“忽略”选项,因为现在它还会报告几个很好忽略的Thumbs.db类型文件。这些很容易,但它会很好。 – PsychoData

+1

请参阅编辑,以过滤更多文件,添加更多管道。 ;) – nephi12