0

停止するサービスのリストを調べるために for ループを実行していますが、引用符に問題があり、かなり異常な結果も出ています。

for /f "tokens=* delims= " %%a in ('wmic service where ^(displayname like "%%tsm%%"^) get name ^| findstr "TSM"') do echo "%%a"

私の結果はこれです:

"Service Name
"Service Name

私がに切り替えると:

for /f "tokens=* delims= " %%a in ('wmic service where ^(displayname like "%%tsm%%"^) get name ^| findstr "TSM"') do echo ""%%a""

結果は次のとおりです。

""Service Name
""Service Name

そして、私がに切り替えると:

for /f "tokens=* delims= " %%a in ('wmic service where ^(displayname like "%%tsm%%"^) get name ^| findstr "TSM"') do echo ^"%%a^"

結果:

"Service Name
"Service Name

結果を引用符で囲み、net stop や sc delete などのコマンドを実行することができないためです。

4

1 に答える 1