2014-03-25 195 views
0

我正在嘗試寫一個批處理文件的一部分,該文件將詢問用戶的文件名,然後搜索該文件。我已經查看了很多年,但是我找不到任何從用戶輸入中完成搜索的示例。從用戶輸入搜索文件

如果用戶輸入存儲在使用set /p myVar = (users input)一個變量是不是就有可能做一個命令,如:dir %myVar%

如果沒有,那麼什麼是基於用戶輸入的搜索正確的方式?

+0

當然,這是可能的。找到該文件後,你想怎麼做? – aphoria

+0

找到文件後,我只是想將它複製到另一個位置,可能更多,但只是基本的文件複製,刪除編輯等。 – Phill

+0

@Phill使用'dir *%myvar%*'或更有用'%% f (*%myvar%*)do(echo %% f)'爲每個找到的文件做一些事情。 – TessellatingHeckler

回答

1

批處理文件中搜索驅動器,子文件夾,做一些對每個文件找到,並有如果沒有被發現告訴的方法:

(編輯:錯過了A/S出)

@echo off 

set /P MyVar="Search for:" 
for /f "usebackq delims=" %%f in (`dir /b /s c:\*%MyVar%*`) do (
    set _foundstuff=yes 
    echo copy "%%f" "c:\somewhere\" 
) 

if "%_foundstuff%"=="yes" goto fin 

rem nothing found code goes here 
echo "nothing found" 

:fin