我试图运行以下代码行:
for %%i in (+ - * /) do echo %%i
但是,不是打印符号,而是在我的计算机上打印一个奇怪的巨大文件列表。
但是,如果我用hi
之类的单词替换符号列表,它会按预期工作。
出了什么问题,我怎样才能遍历这些符号?
答案 0 :(得分:0)
试试for /f
。示例shell脚本(批处理文件):
@echo off
setlocal enableextensions
for /f "tokens=1,2,3,4" %%i in ('echo + - * /') do (
echo %%i
echo %%j
echo %%k
echo %%l
)
endlocal
有关详细信息,请参阅for /?
。
我建议使用PowerShell:
"+-*/".ToCharArray()
答案 1 :(得分:0)
替代上述答案。
for /f "tokens=*" %%i in ('echo + - * /') do @echo %%i
Cheer,G
答案 2 :(得分:0)
这将回显字符串中的字符:
@echo off
setlocal enabledelayedexpansion
set "string=+-*/"
set c=-1
:loop
set /a c+=1
if not "!string:~%c%,1!"=="" echo !string:~%c%,1!&goto :loop
pause