bat脚本for
⑴ bat脚本for循环以查询作为结果,没有结果echo却输出内容
因为在for里执行时,会另外开启一个cmd进程来执行wmic命令,所以结果中会多出一个id
⑵ BAT 批处理脚本求助 有关FOR /F 或者其他语法
假设要提取的文本名为1.txt
@echo off & setlocal enabledelayedexpansion
set file=1.txt
for /f "tokens=*" %%a in ('type "%file%"') do (
set str=%%a
echo !str!|findstr /i "REG_DWORD">nul&&set a=!str:~0,-14!
)
echo "!a!"
pause
如果有指定某个关键词的话可以提高处理效率
@echo off & setlocal enabledelayedexpansion
set file=1.txt
for /f "tokens=*" %%a in ('findstr /c:"狙击 生死线_02.rmvb" "%file%"') do (
set str=%%a
echo !str!|findstr /i "REG_DWORD">nul&&set a=!str:~0,-14!
)
echo "!a!"
pause
⑶ bat 脚本 for /f "delims=", delims的使用
1、在桌面新建文件夹bat_sql_import,bat_sql_import中新建文件夹all_sql,把所有要执行的sql拷贝到all_sql中。
⑷ bat 如何循环一段命令 goto或for都行
让bat脚本循环执行有以下两种方法:
第一、可以直接加个%0,即执行本身,实现循环。
第二、用goto命令,去到要重复的开头,如果要限制次数,可以先set 一个值,循环一次减1,条件命令到0退出,实现循环。
(4)bat脚本for扩展阅读:
goto语句一般格式如下:
goto 语句标号; 其中语句标号是按标识符规定书写的符号, 放在某一语句行的前面,标号后加冒号(:)。语句标号起标识语句的作用,与goto 语句配合使用。
如: label: i++;
loop: while(x<7);
goto loop;
goto语句的语义是改变程序流向, 转去执行语句标号所标识的语句。goto语句通常与条件语句配合使用。可用来实现条件转移, 构成循环,跳出循环体等功能。
⑸ 在bat批处理脚本中,怎样将for语句中的%%i当作字符串处理做类似于%str:~1,5%之类的操作
SETLOCAL ENABLEDELAYEDEXPANSION
@echo off
for /l %%i in (1000,1,1005) do (
@SET num=%%i
@echo !num:~-1,1!
)
pause
大致的思路是把%%i赋值给另一个变量,再对另一个变量进行操作,本例是取了数字的最后一位,并且使用到了延迟变量
⑹ 如何让bat脚本循环执行
1.可以直接加个%0,即执行本身…实现循环
2.或者 用goto命令…去到你要重复的开头…如果要限制次数…可以先set 一个值,循环一次减1,条件命令到0退出,实在循环…
我qq543019571 有问题讨论…
⑺ 问一个BAT脚本的问题
whoami返回值包括UserDomain和UserName,并且以""分隔,而Windows文件名不允许使用"",所以“whoami输出的信息做为文件名”逻辑上是有问题的。
如果你只是想用UserName命名文件,可以这样做:
whoami >> %username%.txt
当然,这样也可以:
whoami >> %userdomain%_%username%.txt
同理,第二条指令,参考如下:
ipconfig >> %username%.txt
ipconfig /all >> %username%.txt
以上默认是按主程序已指定当前目录的情况,不然文件名前需要加上路径。
whoami参考
以上希望能帮上忙!
⑻ 使用Bat脚本实现批处理 for循环中使应用程序打开当前路径下的文件
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir/s/b *HEAD*.key') do (
pushd "%%~dpa"
F:\LSDYNA\program\ls.exe i=%%~na.key
)
pause
⑼ 编程:bat文件的for循环写法:
编程bat文件的for循环写法:
@echo off
for /l %%a in (1,1,9) do (
for /l %%b in (1,1,9) do (
for /l %%c in (1,1,9) do (
echo %%a%%b%%c>>1.txt
)
)
)
pause
%%1是变量名,变量名只能是一个字.可为任意数字或字母;
/l是for里的一个递增参数(初始值,递增值,最终值)。
⑽ bat脚本for循环问题
@echooff
for/l%%ain(1,1,50)do(
for/l%%bin(1,1,50)do(
echoa=%%ab=%%b
SET/Ac=%%a+%%b
callecho%%c%%
)
)