2017-06-28 7 views
0

ファイル内に文字列 "SiteName"を探すスクリプトがあります。私がしたいのは、string = "SiteName"が対応するID番号を返す場合です。私は%のSiteID%変数にIDを格納したい私はこの<site name="SiteName" id="3" serverAutoStart="true">を持っている私のファイルにバッチスクリプト - 文字列を検索する "Name"文字列に対応する返品ID

@echo off 
set SiteID 
%SiteID% = findstr /s /b "SiteName" %WinDir%\System32\Inetsrv\Config\applicationHost.Config 

答えて

1
FOR /f "usebackqtokens=1-3delims=<=> " %%a IN ("%filename1%") DO (
if "%%a"=="site" if "%%b"=="name" set siteid=%%~c 
) 
echo %siteid% 

名前どんな

"requireddata" をデリミタデリミタサイトを区切り文字として構成されている行のファイル名を検索しますのいずれかであるの区切り文字、=>またはスペース

usebackqは(あなたが指名するように一定であってもよい)ファイル名が(それが区切りが含まれている場合は必須)引用されることを可能にする、と~は、いずれかを削除します

+0

私は '1'から' 5'へのトークンを得ると私のために働き、 'set'コマンドでは' %%〜e'変数。 – dcg

+0

この場合、%filename%はファイルへのパスですか? –

+0

はい - ファイル名を格納するために変数を使用しました。 – Magoo

関連する問題