文档库 最新最全的文档下载
当前位置:文档库 › 常用dos命令

常用dos命令

dos很好很强大,有时候你工作的机器不可能都有perl,vbs,java,dos就很使用快捷了

一直在dos版潜水,经常做的事情就是fterm,ctrl+1把精华区转到我的邮箱里面去
从这里吸收到很多知识,现在来贡献一点我常用的技巧,
水平有限,抛砖引玉吧,有些用法很多人都知道,
但是总结一下利人利己。欢迎大家指点,应该还可以改进我的用法

1.杀掉进程
由于很多进程经常处理要是一个个去杀掉的换,总是去切换 任务管理器,很麻烦,还得找

简单版:
有个程序pk.exe(一般我把pk.exe 放在 %systemroot%)这样随时都可以用,可以杀掉很多程序,
比如杀掉崩溃了的ie
pk.exe iexplor*.exe
杀掉某vpn的程序
pk arr*.exe
至于pk.exe方法如何使用直接pk.exe 提示帮助。

纯dos版:
有时候pk.exe 不在你手头工作的机器上,或者有时候copy不进去,也很麻烦
这个时候可以使用tasklist和taskkill这对兄弟了

首先tasklist看到正在运行的 程序名,pid,内存使用

然后taskkill
taskkill /F /IM ipmsg.exe
(注意为了强制杀掉,请用/F /IM)
还可以加pid的杀进程,比如taskkill /F /PID 1848
详细的使用看帮助吧。

2.delay延时
简单版: 有个工具sleep.exe
等待10秒
sleep.exe 10

纯dos版:
ping -n 5 127.0.0.1

3.列出某目录下的文件
有时候需要得出某个目录下的文件类型,来做批处理,比如
.pl

比如
dir /b *.pl >list.txt
这样list.txt下如下:
adddata.pl
adddata0.pl

这个时候就好处理了
dir /b/s *.pl >list.txt
得到
D:\abc\tools\perl\adddata.pl
D:\abc\tools\perl\adddata0.pl

由于每个季度,老板让我汇报上一季度工作的情况,我一般
dir /b/s e:\job >job.list
然后对于job.list中的文件列表 使用perl程序判断一下该文件是在上一个季度,
这样我就可以告诉我上季度支持了那些客户。

4.dos批处理命令里面加上一个@ 就可以表面上隐藏该执行的命令,
比如我的一个cleanjob.bat
@del *.lck
@del *.pid
@del *.txt
@del *.str

5.批处理接收参数
比如我有很多job执行,那么我可以执行
cleandb.bat
echo off
echo "I will del all docs in searchengine database=>>%1"
echo on
@curl.exe "http://localhost:9001/xyzDELDBASE?xyzDbName=%1"
@del %1.*
@rd /S /Q %1
@rd /S /Q logs
@del txtback\*.txt
@del *.lst
我抓取了很多网站,需要清除某个网站重新抓取的时候
cleanjob.bat sina
cleanjob.bat sohu
cleanjob.bat qq

6.for命令
for命令我感觉是很复杂但是非常有用的一个命令,自己也只掌握了一点皮毛
欢迎大家都举例自己如何使用的

比如我的某个目录下有很多各种类型的文件,需要批量索引到搜索引擎,
有时候是 file*.txt,有时候是 file*.txt.done
那么
D:\doc\dos\batchtxt.bat可以搞定
rem this batch file will import txt file to searchengine by s

zbruce77@https://www.wendangku.net/doc/9f13714649.html,
@if "%1%"=="" goto Usage
echo I will import all txt files of %1% and its subdirectory(change dir /s option)
set /p pass=continue[c] quit[q]
if "%pass%"=="c" goto batchimportdata
if "%pass%"=="q" goto end
:batchimportdata
echo %1_%2
@echo on & setlocal EnableDelayedExpansion
for /f %%i in ('"dir /b/s %1\*.%2"') do (
set file=%%~fi
echo !file!
curl.exe http://localhost:9001/xyzADD?!file!
)
goto end
:Usage
echo usage: importdata.bat datapath
:end
echo end of task....

比如
D:\doc\dos\batchtxt.bat E:\job\20110426_1suo txt
那么该命令会找到所有的txt文档,然后索引到服务器去了
D:\doc\dos\batchtxt.bat E:\job\20110426_1suo done
那么该命令会找到所有的done文档,然后索引到服务器去了


7.以后用空在总结其他用法,并且就我困惑的一些问题发问。


相关文档