我是一個完整的新手腳本。我想知道是否有人會幫我創建一個腳本。我正在查找的腳本是執行查找和移動過程的批處理文件。該查找將在dicom文件中搜索文本字符串(示例患者ID)。此外,查找也需要在子文件夾中搜索。此外,查找將查找的文件擴展名爲.dcm或.raw。一旦查找完成並找到包含文本字符串的文件。我想要腳本,然後將它找到的文件複製到桌面上。任何幫助,將不勝感激。腳本執行搜索和文件複製
回答
這應該爲你做。要查看命令行中每個命令類型command /?
的所有可用選項。
echo /?
for /?
find /?
xcopy /?
findstr /?
...
方法1:(推薦)
:: No delayed expansion needed.
:: Hide command output.
@echo off
:: Set the active directory; where to start the search.
cd "C:\Root"
:: Loop recusively listing only dcm and raw files.
for /r %%A in (*.dcm *.raw) do call :FindMoveTo "patient id" "%%~dpnA" "%UserProfile%\Desktop"
:: Pause the script to review the results.
pause
goto End
:FindMoveTo <Term> <File> <Target>
:: Look for the search term inside the current file. /i means case insensitive.
find /c /i "%~1" "%~2" > nul
:: Copy the file since it contains the search term to the Target directory.
if %ErrorLevel% EQU 0 xcopy "%~2" "%~3\" /c /i /y
goto :eof
:End
方法2:(不推薦由於FINDSTR /s
bug)
@echo off
for /f "usebackq delims=" %%A in (`findstr /s /i /m /c:"patient id" *.dcm`) do xcopy "%%~dpnA" "%UserProfile%\Desktop\" /c /i /y
for /f "usebackq delims=" %%A in (`findstr /s /i /m /c:"patient id" *.raw`) do xcopy "%%~dpnA" "%UserProfile%\Desktop\" /c /i /y
pause
方法2可能會給出不正確的結果,因爲有關8.3短文件名的討厭的FINDSTR錯誤。有關更多信息,請參見[Windows FINDSTR命令的未記錄功能和限制?](http://stackoverflow.com/q/8844868/1012053)。 – dbenham
@dbenham謝謝,我還沒有看到這篇文章。我會將其添加到我的答案中。 –
setlocal enabledelayedexpansion
for /r C:\folder %%a in (*.dcm *.raw) do (
find "yourstring" "%%a"
if !errorlevel!==0 copy "%%a" "%homepath%\Desktop" /y
)
+1 - 您可能想要抑制FIND的輸出。也不需要延遲擴展。 (* .dcm * .raw)do> nul找到「yourstring」「%% a」&& copy「%% a」「%homepath% \桌面「/ y' – dbenham
謝謝,是的,一個班輪是偉大的,它節省了延遲擴張的需要。 –
- 1. Shell腳本搜索和複製
- 2. 如何執行文本文件的二進制搜索
- 3. shell腳本文件搜索
- 4. 文件搜索bash腳本
- 5. Python文件搜索腳本
- 6. 腳本php,搜索文件
- 7. 執行TCL腳本的搜索路徑
- 8. 簡單的shell腳本來複制文件和文件夾,並執行命令
- 9. PHP腳本搜索CSV文本文件
- 10. SSIS腳本任務搜索文本(如果可用的複製文件)
- 11. 使用.bat腳本自動執行文件複製
- 12. Powershell:文件完成複製後執行腳本
- 13. 批處理腳本:搜索文件,提取數字,並複製到新文件
- 14. GAS - 如何使用綁定腳本複製Docs文件並執行該腳本
- 15. ssh腳本和複製文件
- 16. 腳本來複制和粘貼文件
- 17. 在目錄中搜索特定字符串的XML文件,然後使用bat腳本執行復制操作
- 18. shell腳本複製文件
- 19. Bash腳本複製文件
- 20. Powershell複製文件腳本
- 21. 執行二進制搜索
- 22. 文本框複製到搜索框
- 23. shell腳本搜索和替換文本文件
- 24. 用於遠程複製和腳本執行的Ansible劇本
- 25. 腳本來搜索文件和重命名文件
- 26. 在文件插入文件後恢復執行shell腳本
- 27. 執行搜索喜歡谷歌搜索文本框
- 28. Shell腳本搜索常規文件
- 29. Shell腳本,字符串搜索文件
- 30. Python腳本來搜索文件
漂亮類似於http:// stackoverflow.com/questions/8750206/vbscript-to-find-and-move-文件 - 自動呢? – RhysW