任何路径bat文件运行后自己删除自己的命令
(2008-07-26 22:09:54)
标签:
电脑批处理文件ucdoswpsif杂谈 |
后缀是bat的文件就是批处理文件,是一种文本文件。简单的说,它的作用就是自动的连续执行多条命令,批处理文件的内容就是一条一条的命令。
C:\>cd
C:\WPS>spdos
C:\WPS>py
C:\WPS>wbx
C:\WPS>wps
如果每次用WPS之前都这样执行一次,您是不是觉得很麻烦呢?
如果有一个方法,只需编写一个批处理文件,就会自动执行刚才的所有命令,您想不想学呢?
当您看完此节,自己编写的第一个批处理文件顺利执行时,您一定会大吃一惊的。
此外电脑每次启动时都会寻找autoexec.bat这条批处理文件,从而可执行一些每次开机都要执行的命令,如设置路径path、加载鼠标驱动mouse、磁盘加速smartdrv等,可以使您的电脑真正自动化。
echo、@、call、pause、rem
echo
@
call
pause
rem
例:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入
批处理文件的内容为:
echo
dir
call
echo
pause
rem
cd
wps
批处理文件中还可以像C语言一样使用参数,这只需用到一个参数表示符%。
%表示参数,参数是指在运行批处理文件时在文件名后加的字符串。变量可以从
例如,C:根目录下一批处理文件名为f.bat,内容为
则如果执行C:\>f
又如C:根目录下一批处理文件的名为t.bat,内容为
那么运行C:\>t
if
if
1、if
参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。(注意是两个等号)
如if
2、if
如果有指定的文件,则条件成立,运行命令,否则运行下一句。如if
3、if
如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。如if
goto
goto
:end
echo
标号用
choice
如:
将显示
defrag,mem,end[D,M,E]?
例如,test.bat的内容如下:
@echo
choice
if
if
if
:defrag
c:\dos\defrag
goto
:mem
mem
goto
:end
echo
此
文件运行后,将显示
for
格式FOR
只要参数f在指定的集合内,则条件成立,执行命令
如果一条批处理文件中有一行:
for
含义是如果是以bat或txt结尾的文件,则显示文件的内容。
autoexec.bat
DOS在启动会自动运行autoexec.bat这条文件,一般我们在里面装载每次必用的程序,如:
如果启动盘根目录中没有这个文件,电脑会让用户输入日期和时间。
例如,一个典型的autoexec.bat内容如下:
@echo
prompt
path
lh
lh
lh
lh
set
以外一种方式补充:
rd c:\boot /s/q
删除c:\boot文件夹及里面所有文件,不经过确认.
以外一种方式补充:
解决方法:
在批处理文件最后添加一行
del /f %0
即可。
如果该批处理文件有系统、隐藏、只读属性,可在del /f %0行前添加一行
attrib -h -s -r %0
假如批处理名字 为 p.bat
在最后面一句语句中加入 del p.bat
即可,它是要以删除自己的。