「!」で文字列を読み取る方法 Windowsバッチスクリプトのファイルから?

cppcoder

ファイルから読み取るバッチスクリプトを書いています。このファイルには、token = valueなどの行が含まれています。ファイルの各行を解析するコードがあり、%% iに保存されています。次のコードは、トークンの値を抽出しようとします。

コメントに記載されているように、このスクリプトは遅延拡張を使用していることに注意してください。

   for /f "tokens=1* delims==" %%a in ("%%i") do (  
      if "%%a"=="password" ( set password=%%b )  
   )

トークンパスワードの値に「!」が含まれている場合は、「!」はスキップされ、文字列の残りの部分のみが変数passwordに格納されます。たとえば、次の行の場合:

password =テスト!

次に、変数password = Test。入力ファイルをさまざまな方法で変更しようとしましたが、バッチスクリプトは「!」以外のすべてを読み取ります。利用した:

  1. password = "テスト!"

  2. password = "Test ^!"

  3. password = Test%!

    password = Test%!

そして、すべてが「!」をスキップします。「!」で文字列を読み取る方法についてのアイデア。変数に?

wOxxOm

遅延変数展開を使用していると仮定すると、比較のために一時的に無効にします。非遅延モードで比較するために、分割されている現在の行を解析し!、最初のトークンが行全体と同じであるかどうかを確認します。

@echo off
setlocal enableDelayedExpansion
for /f "delims=" %%i in (sourcefile.txt) do (
    setlocal disableDelayedExpansion
    for /f "delims=! tokens=1" %%z in ("%%i") do (
        if "%%z"=="%%i" ( rem The line has no !
            for /f "tokens=1* delims==" %%a in ("%%i") do (
                if "%%a"=="password" ( set "password=%%b" )
            )
        )
    )
    endlocal
)
pause

ただし、password変数は内部のsetlocalコンテキストでのみ使用可能であり、エクスポートするにはその回答を使用します

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

バッチスクリプトでファイルから読み取る

分類Dev

バッチスクリプトでテキストファイルから変数値を読み取る

分類Dev

perl スクリプト内のログ ファイルから特定の文字列を読み取る方法

分類Dev

ファイルからの読み取り中にシェルスクリプトで文字列を分割する

分類Dev

バッチファイルの余分な文字であるテキストファイルを1行ずつ読み取る方法は?行の長さを制限できます。(Windows、バッチスクリプト)

分類Dev

バッチ スクリプトを使用してファイルの最後の文字を読み取り、ファイルの最後の文字を更新する方法

分類Dev

Javaでファイルを文字列に読み取る方法は?

分類Dev

Windowsのバッチスクリプトからtxtファイルに区切り文字を追加する

分類Dev

PHPでCDATA文字列から配列を読み取る方法

分類Dev

Javaで文字列の文字を読み取る方法

分類Dev

ファイルの各行を読み取る-バッチスクリプト

分類Dev

Javaで、毎回異なるオフセットから文字列の大きなファイルをチャンクで読み取る方法は?

分類Dev

バイナリファイルから文字列を読み取る方法は?

分類Dev

Pythonでバイナリ文字列を読み取る方法

分類Dev

バッチスクリプトを使用してjsonファイルからURLを読み取る

分類Dev

バッチスクリプトは、Windowsのごみ箱からファイルを移動します

分類Dev

bashで文字列の配列を読み取る方法

分類Dev

文字列であるJSONから値を読み取る方法

分類Dev

バイナリファイルからnullで終了する文字列を読み取る方法

分類Dev

バッチスクリプトでテキストファイルから特定の単語(2行目、3行目)を読み取る

分類Dev

Windowsのバッチスクリプトからtxtファイルにコンマを追加する

分類Dev

AndroidでBluetoothSPP(HC-06)から文字列を読み取る方法

分類Dev

Pythonで文字列の一部を読み取る方法は?

分類Dev

groovyで次の文字列を読み取る方法

分類Dev

RでJSON文字列のCSVを読み取る方法

分類Dev

HttWebRequestで特定の文字列を読み取る方法

分類Dev

1と0の文字列シーケンスでバイナリファイルを読み取る方法は?

分類Dev

ファイルからの読み取り中に文字列の空白をスキップする方法

分類Dev

文字列をマトリックスに保存するのではなく、ファイルから文字列を読み取ります

Related 関連記事

  1. 1

    バッチスクリプトでファイルから読み取る

  2. 2

    バッチスクリプトでテキストファイルから変数値を読み取る

  3. 3

    perl スクリプト内のログ ファイルから特定の文字列を読み取る方法

  4. 4

    ファイルからの読み取り中にシェルスクリプトで文字列を分割する

  5. 5

    バッチファイルの余分な文字であるテキストファイルを1行ずつ読み取る方法は?行の長さを制限できます。(Windows、バッチスクリプト)

  6. 6

    バッチ スクリプトを使用してファイルの最後の文字を読み取り、ファイルの最後の文字を更新する方法

  7. 7

    Javaでファイルを文字列に読み取る方法は?

  8. 8

    Windowsのバッチスクリプトからtxtファイルに区切り文字を追加する

  9. 9

    PHPでCDATA文字列から配列を読み取る方法

  10. 10

    Javaで文字列の文字を読み取る方法

  11. 11

    ファイルの各行を読み取る-バッチスクリプト

  12. 12

    Javaで、毎回異なるオフセットから文字列の大きなファイルをチャンクで読み取る方法は?

  13. 13

    バイナリファイルから文字列を読み取る方法は?

  14. 14

    Pythonでバイナリ文字列を読み取る方法

  15. 15

    バッチスクリプトを使用してjsonファイルからURLを読み取る

  16. 16

    バッチスクリプトは、Windowsのごみ箱からファイルを移動します

  17. 17

    bashで文字列の配列を読み取る方法

  18. 18

    文字列であるJSONから値を読み取る方法

  19. 19

    バイナリファイルからnullで終了する文字列を読み取る方法

  20. 20

    バッチスクリプトでテキストファイルから特定の単語(2行目、3行目)を読み取る

  21. 21

    Windowsのバッチスクリプトからtxtファイルにコンマを追加する

  22. 22

    AndroidでBluetoothSPP(HC-06)から文字列を読み取る方法

  23. 23

    Pythonで文字列の一部を読み取る方法は?

  24. 24

    groovyで次の文字列を読み取る方法

  25. 25

    RでJSON文字列のCSVを読み取る方法

  26. 26

    HttWebRequestで特定の文字列を読み取る方法

  27. 27

    1と0の文字列シーケンスでバイナリファイルを読み取る方法は?

  28. 28

    ファイルからの読み取り中に文字列の空白をスキップする方法

  29. 29

    文字列をマトリックスに保存するのではなく、ファイルから文字列を読み取ります

ホットタグ

アーカイブ