|
fmr520
初级用户
积分 66
发帖 25
注册 2008-3-6
状态 离线
|
『楼 主』:
[求助]如何记录批处理本身运行的次数
如何记录批处理本身运行的次数,比如,运行了1次,运行第二次是会显示运行了2次。
|
|
2008-3-26 19:45 |
|
|
faultcode
初级用户
积分 120
发帖 60
注册 2007-10-26
状态 离线
|
『第
2 楼』:
貌似变量设置只在当前环境下有效
只通过批处理本身的话不会 如果导出记录文件关联的话 应该还是容易实现的
|
|
2008-3-26 20:27 |
|
|
plp626
银牌会员
钻石会员
积分 2278
发帖 1020
注册 2007-11-19
状态 离线
|
『第
3 楼』:
@echo off
set/p n=<%tmp%\n&cls
set/a n+=1
echo 第%n%次&echo %n% >%tmp%\n
pause
|
山外有山,人外有人;低调做人,努力做事。
进入网盘(各种工具)~~ 空间~~cmd学习 |
|
2008-3-26 20:27 |
|
|
fmr520
初级用户
积分 66
发帖 25
注册 2008-3-6
状态 离线
|
|
2008-3-27 10:42 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
|
2008-3-27 10:56 |
|
|
jvive
初级用户
替身
积分 122
发帖 17
注册 2008-3-27
状态 离线
|
『第
6 楼』:
zh159
的方法巧,(其实用%~s0也可以兼容空格)
顺便请教下:
在批处理文件运行后, 怎样可以对批处理自身文件的第一行字符,与最后一行字符进行修改.其他行不变.(所谓的变身)
我想用echo的方法 特殊字符不好处理.
|
|
2008-3-27 11:21 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
『第
7 楼』:
单纯批处理好像不行,不过可以考虑用内嵌VBS脚本来处理
|
|
|
2008-3-27 12:14 |
|
|
terse
银牌会员
积分 2404
发帖 946
注册 2005-9-8
状态 离线
|
『第
8 楼』:
Quote: | Originally posted by jvive at 2008-3-27 11:21:
zh159
的方法巧,(其实用%~s0也可以兼容空格)
顺便请教下:
在批处理文件运行后, 怎样可以对批处理自身文件的第一行字符,与最后一行字符 ... |
|
你的意思是不是这样?
:1
@echo off
for /f "delims=:" %%a in (%~nx0) do set/a a=%%a& goto _next
:_next
echo 运行第 %a% 次
set/a a+=1
>_emp echo :%a%
for /f "delims=" %%a in ('more/e +1 "%~nx0"') do >>_emp echo %%a
move /y "_emp" "%~nx0" 2>NUL
pause
|
简单!简单!再简单! |
|
2008-3-27 12:46 |
|
|
Shinaterry
初级用户
积分 97
发帖 51
注册 2008-3-19
状态 离线
|
|
2008-3-27 13:20 |
|
|
jvive
初级用户
替身
积分 122
发帖 17
注册 2008-3-27
状态 离线
|
『第
10 楼』:
Quote: | Originally posted by terse at 2008-3-27 12:46 PM:
你的意思是不是这样?
:1
@echo off
for /f "delims=:" %%a in (%~nx0) do set/a a=%%a& goto _next
:_next
echo 运行第 %a% 次
set/a a+=1
>_emp echo :%a%
for /f &q ... |
|
不局限于本帖. 这个帖子让我想到了"程序变身"
PS: more可以显示某行以后的,但好像难以显示多少行以前的.
|
|
2008-3-27 13:50 |
|
|
terse
银牌会员
积分 2404
发帖 946
注册 2005-9-8
状态 离线
|
『第
11 楼』:
Quote: | Originally posted by jvive at 2008-3-27 13:50:
不局限于本帖. 这个帖子让我想到了"程序变身"
PS: more可以显示某行以后的,但好像难以显示多少行以前的. |
|
显示指定行并不一定要用more 判断就可以嘛
|
简单!简单!再简单! |
|
2008-3-27 14:11 |
|
|
fmr520
初级用户
积分 66
发帖 25
注册 2008-3-6
状态 离线
|
『第
12 楼』:
@echo off
set/p o=<%tmp%\o&cls
set/a o+=1
echo %o% >%tmp%\o
if "%o%"gtr"20" echo 20 &&pause
这样怎么不行啊???
|
|
2008-3-28 10:15 |
|