たとえば、ファイル名を指定し、スクリプトでこのファイルをコンピューターで検索して、変数へのパスを返すようにします。疑似呼び出しは次のとおりです。
pathToMyFile = SomeSearchFunction(myFileToSearchFor.ext)を設定します
ありがとう
たとえば、ファイル名を指定し、スクリプトでこのファイルをコンピューターで検索して、変数へのパスを返すようにします。疑似呼び出しは次のとおりです。
pathToMyFile = SomeSearchFunction(myFileToSearchFor.ext)を設定します
ありがとう
dir /b /s "c:\myFileToSearchFor.ext"
フル パス情報を含む、C: ドライブ内のファイルのすべての出現を一覧表示します。
ファイルは複数の場所に存在する可能性があります。
このバッチ コマンドは、変数を最後に見つかった場所に設定します。
for /f "delims=" %%F in ('dir /b /s "c:\myFileToSearchFor.ext"') do set "pathToMyFile=%%~dpF"
このバッチ スクリプトは、変数を最初に見つかった場所に設定します。
for /f "delims=" %%F in ('dir /b /s "c:\myFileToSearchFor.ext"') do (
set "pathToMyFile=%%~dpF"
goto :foundIt
)
:foundIt
私が知っているこれを実行する関数/プログラムはありません。効率が必要な場合は、すべてのディレクトリを介してファンシー ツリー検索を行うプログラムを作成できます。しかし、私はバッチで解決策を見つけました!
@echo off
for /r "C:\somebasepath" %%i in (*) do (
if "%%~nxi" EQU "%1" (
echo %%i
break
)
)
検索するファイルをバッチ ファイルの最初の引数として渡します。しかし、深いディレクトリにある場合、これは非常に遅くなります。