【发布时间】:2014-11-20 17:13:14
【问题描述】:
我的问题
我有这个代码:
sc query %MyService%| find /I "running"> NUL
if not ERRORLEVEL 1 (
for /f "delims=" %%i in ('sc query %MyService%^| find /I "running"') do (
:: do something I
)
) else (
for /f "delims=" %%i in ('sc query %MyService%^| find /I "running"') do (
:: do something II
)
我想在不测试 >NUL 的情况下单独检查错误级别。 这可能吗?
for /f "delims=" %%i in ('rename...') do (
:: do something I
) ELSE (
:: do something II
echo not file(s) renamed!
)
我想知道是否可以使用 FOR 循环来完成所有这些操作,因为如果是像某些 rename 命令这样的修改状态,我没有机会管理结果... 但是,如果重命名不产生结果?我怎么知道?
二题 我可以只使用一个 FOR 获得最后一行,最后一个“字符串部分”吗 如果我有 3 行 3 个标记(字符串)
for /f "skip=3 delims=1,tokens=3" %%i in ('My command') do (
:: do something I
)
怎么做?
【问题讨论】:
标签: windows batch-file for-loop cmd