FSearch.bat ----- ここから @echo off setlocal set STR=%1 set LIST=D:\List\LIST_FILE.txt set RLIST=D:\List\LIST_FILE_R.txt set DATA_DIR=D:\DATA set SORT_CMD=c:\bin\sort.exe set SORT_OPT=-r set GREP_CMD=c:\bin\yagrep.exe set GREP_OPT=-P set HEAD_CMD=c:\bin\head.exe set HEAD_OPT=-n1 set CLIP_CMD=C:\WINDOWS\SYSTEM32\CLIP.exe set NoCLIP=0 set NoOpen=0 :
if "%1"=="-nc" goto :NoCLIP if "%1"=="/nc" goto :NoCLIP if "%1"=="-NC" goto :NoCLIP if "%1"=="/NC" goto :NoCLIP if "%1"=="-no" goto :NoOpen if "%1"=="/no" goto :NoOpen if "%1"=="-NO" goto :NoOpen if "%1"=="/NO" goto :NoOpen if "%1"=="-n" goto :RENEW if "%1"=="/n" goto :RENEW if "%1"=="-N" goto :RENEW if "%1"=="/N" goto :RENEW if "%1"=="-r" goto :RENEW if "%1"=="/r" goto :RENEW if "%1"=="-R" goto :RENEW if "%1"=="/R" goto :RENEW if "%1"=="-?" goto :USAGE if "%1"=="/?" goto :USAGE if "%1"=="-h" goto :USAGE if "%1"=="/h" goto :USAGE if "%1"=="-H" goto :USAGE if "%1"=="/H" goto :USAGE if "%1"=="" goto :USAGE
goto :PROC
:NoOpen set NoOpen=1 set NoCLIP=1 set STR=%2
goto :PROC
:NoCLIP set NoCLIP=1 set STR=%2
:PROC echo STR="%STR%"
FOR /F "usebackq delims==" %%n IN (`type %RLIST% ^| %GREP_CMD% %GREP_OPT% "%STR%" ^| %HEAD_CMD% %HEAD_OPT%`) DO ( echo %%n echo STR=%STR% SET FILENAME=%%n echo FILENAME=%FILENAME% )
if "%NoCLIP%"=="0" ( echo %FNAME%| %CLIP_CMD% ) REM start explorer.exe /e,"%FPATH%" if "%NoOpen%"=="0" ( start explorer.exe /e,/select,"%FPATH%%FNAME%%FEXT%" ) goto END
:NOT_FOUND echo 見つかりません. goto END
:FNAME_GET set FPATH=%~dp1 set FNAME=%~n1 set FEXT=%~x1 exit /B
:USAGE echo USAGE : %~nx0 "STRING" echo %~nx0 "STRING" : LIST SERACH echo %~nx0 [-/]nc "STRING" : LIST SERACH NoCLIP echo %~nx0 [-/]no "STRING" : LIST SERACH NoOpen Directory echo %~nx0 [-/][nr] : LIST and Reverse LIST RENEW echo %~nx0 [-/]h : USAGE goto END
:RENEW dir %DATA_DIR% /B /S /O:N > %LIST% type %LIST% | %SORT_CMD% %SORT_OPT% > %RLIST%