【发布时间】:2011-12-29 01:01:48
【问题描述】:
拖放.bat,它会获取文件,
将其放入 2 个列表并同时处理这两个列表。
我通过了一条路径:X:\folder\folder number\begin.txt 到 %1
如果我有 foldernumber 就可以了
PUSHD %~dp0
:loop
IF ["%~f1"] EQU [""] goto :out
echo %~f1>>list
set /a count+=1
SHIFT
goto :loop
POPD
:out
if %count% LEQ 1 (copy list list1 && goto :START)
set /a count2=%count%/2
more /e +%count2% list > list2
set count=0
setlocal enabledelayedexpansion
for /F "eol=; tokens=* delims=," %%i in (list) do (
set /a count+=1
if !count! leq !count2! echo %%i >>list1
)
endlocal
:: Create the 2nd .bat for multiprocessing and start multiprocessing
more /e +88 mybat.bat > temp.bat
START "2nd Process mybat2" temp.bat
:start
for /f "eol=; tokens=* delims==," %%i in (list1) do call :SEARCH %%i
goto :END
:: 88th line here
for /f "eol=; tokens=* delims==," %%k in (list2) do call :SEARCH %%k
goto :END
:search
setlocal enabledelayedexpansion
for %%A in (jan feb mar apr mai etc...) DO (
findstr /m "%%A" "%~f1" > NUL
if !ERRORLEVEL! == 0 (
call :theend %~1 %%A
goto :EOF
)
)
endlocal
我收到此错误消息“FINDSTR:无法打开 X:\folder\folder number\begin.txt”
有没有办法解决这个 findstr 问题?
谢谢
【问题讨论】:
-
您确定错误消息不是“FINDSTR: 无法打开 X:\folder\folder”吗?这将明确意味着您错过了 @jeb 提到的将文件名传递给引号
-
mybatch 需要拖放文件,如果文件夹名称中没有空格,它可以正常工作。
-
错误信息是什么?
标签: path batch-file space findstr