如何把批处理里的内容,任意指定行并执选定的内容
scconfigNetmanstart=DEMANDscconfigNlastart=DEMANDscconfigNtLmSspstart=DEMAND(选中他,不管他在...
sc config Netman start= DEMAND
sc config Nla start= DEMAND
sc config NtLmSsp start= DEMAND (选中他,不管他在哪行)
sc config NtmsSvc start= DEMAND
sc config PlugPlay start= AUTO
sc config PolicyAgent start= AUTO
sc config ProtectedStorage start= AUTO
sc config RasAuto start= DEMAND
sc config RasMan start= DEMAND
sc config RDSessMgr start= DEMAND
sc config RemoteAccess start= DISABLED
sc config RemoteRegistry start= AUTO
sc config RpcLocator start= DEMAND
sc config RpcSs start= AUTO
sc config RSVP start= DEMAND
sc config SamSs start= AUTO
sc config SCardSvr start= DEMAND
sc config Schedule start= AUTO (选中他,不管他在哪行)
sc config seclogon start= AUTO
然后执行选中的 前行 的和 中间 的和 后面的 (都要执行) 展开
sc config Nla start= DEMAND
sc config NtLmSsp start= DEMAND (选中他,不管他在哪行)
sc config NtmsSvc start= DEMAND
sc config PlugPlay start= AUTO
sc config PolicyAgent start= AUTO
sc config ProtectedStorage start= AUTO
sc config RasAuto start= DEMAND
sc config RasMan start= DEMAND
sc config RDSessMgr start= DEMAND
sc config RemoteAccess start= DISABLED
sc config RemoteRegistry start= AUTO
sc config RpcLocator start= DEMAND
sc config RpcSs start= AUTO
sc config RSVP start= DEMAND
sc config SamSs start= AUTO
sc config SCardSvr start= DEMAND
sc config Schedule start= AUTO (选中他,不管他在哪行)
sc config seclogon start= AUTO
然后执行选中的 前行 的和 中间 的和 后面的 (都要执行) 展开
2个回答
展开全部
这里是指定行内容,如果是指定行数,请自行修改,把下面的内容存为bat文件,再把你想执行的命令列表追加在后面,就可以啦,如:
@echo off && setlocal enabledelayedexpansion
set /p startcontent=Enter Start CMD:
set /p endcontent=Enter End CMD:
for /f "tokens=1 delims=:" %%a in ('findstr /n . %~nx0') do set line=%%a
set startline=!line!
set endline=!line!
for /f "tokens=1 delims=[]" %%a in ('type %~nx0 ^| find /i /n "%startcontent%" ') do set startline=%%a
for /f "tokens=1 delims=[]" %%a in ('type %~nx0 ^| find /i /n "%endcontent%" ') do set endline=%%a
if !startline! GEQ !endline! set line=!startline!&& set startline=!endline!&& set endline=!line!
set /a startline=!startline!-1
for /f "skip=%startline% tokens=*" %%a in (%~nx0) do (
%%a
set /a startline=startline+1
if !startline! EQU !endline! goto :eof
)
sc config ProtectedStorage start= AUTO
sc config RasAuto start= DEMAND
sc config RasMan start= DEMAND
sc config RDSessMgr start= DEMAND
sc config RemoteAccess start= DISABLED
sc config RemoteRegistry start= AUTO
sc config RpcLocator start= DEMAND
@echo off && setlocal enabledelayedexpansion
set /p startcontent=Enter Start CMD:
set /p endcontent=Enter End CMD:
for /f "tokens=1 delims=:" %%a in ('findstr /n . %~nx0') do set line=%%a
set startline=!line!
set endline=!line!
for /f "tokens=1 delims=[]" %%a in ('type %~nx0 ^| find /i /n "%startcontent%" ') do set startline=%%a
for /f "tokens=1 delims=[]" %%a in ('type %~nx0 ^| find /i /n "%endcontent%" ') do set endline=%%a
if !startline! GEQ !endline! set line=!startline!&& set startline=!endline!&& set endline=!line!
set /a startline=!startline!-1
for /f "skip=%startline% tokens=*" %%a in (%~nx0) do (
%%a
set /a startline=startline+1
if !startline! EQU !endline! goto :eof
)
sc config ProtectedStorage start= AUTO
sc config RasAuto start= DEMAND
sc config RasMan start= DEMAND
sc config RDSessMgr start= DEMAND
sc config RemoteAccess start= DISABLED
sc config RemoteRegistry start= AUTO
sc config RpcLocator start= DEMAND
更多追问追答
追问
1、运行不了
2、我这样做的原因是想减少批处理的体积,你的这样做反+了体积,我是把几种不同的服务优化模式放在一个批处理里,我是想每次选择优化时,可以先执行XP系统默认的服务在执行需要的优化模式,这样做的好处是可以把默认的和要优化的命令相同的地方去掉不要来减少批处理的体积
追答
请问你指定行的时候是用行的内容来指定的,还是直接指定行数呀?
365全能通莓控淘宝店
展开全部
用set/p
更多追问追答
追问
sc config Nla start= DEMAND
sc config NtLmSsp start= DEMAND (选中1,不管他在哪行)
sc config NtmsSvc start= DEMAND
sc config PlugPlay start= AUTO
sc config SCardSvr start= DEMAND
sc config Schedule start= AUTO (选中2,不管他在哪行)
sc config seclogon start= AUTO
是要在本身正在运行的批处理里选中并执行,选中的是包括1和2还有1和2之间的并都要执行
能给个完整的代码吗?
追答
也就说你会同时选两个,然后运行两个中间的包括选中的这两个是吧?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |