3

次の 1 行を含むテキスト ファイル (vernum.txt) があります。

リビジョン 2 で。

dos cmd 行を使用して行を読み取り、数値だけで変数を保存するにはどうすればよいですか? 常に「At Revision ####」になります。

4

2 に答える 2

3
for /f "tokens=3delims=. " %%i in (vernum.txt) do set vernum=%%i

echo version number=%vernum%

vernum.txtファイルが現在のディレクトリにない場合は、フル パス名に変更する必要がある場合があります。ファイル名にスペースが含まれている場合は、「二重引用符」を使用して名前を引用する必要があります。引用符を使用する場合は、キーワードusebackqの前にkey ディレクティブを引用符に追加する必要もありますtokens

修飾子の終了引用符の前のスペースは重要です。これは、「区切り文字が.またはであることを意味しspaceます。tokens=3は、3 番目のトークン :At revisionおよび2

for /?ドキュメントのプロンプトから参照してください。

于 2013-05-09T14:46:48.840 に答える
2

次のようなコマンドを使用します。

@ECHO off

SET /P MYVAR=<vernum.txt
ECHO MYVAR=%MYVAR%
FOR /f "tokens=3* delims=.\ " %%K IN ( "%MYVAR%" ) DO (
    SET /A RESULT=%%K
)
ECHO The number is: %RESULT%

pause
于 2013-05-09T14:44:59.763 に答える