-
定时停止服务,启动服务。
:start
sc stop "Service To Restart"
ping 127.1 -n 4 >nul
sc start "Service To Restart"
goto start
:start 是一个标识,声明以便在后面 goto start, 实现无限循环的效果。
ping 127.1 -n 4 >nul 睡眠4秒,避免操作过快。
ping 127.1 -n 4是调用ping命令, 127.1是本地回路,必定能ping通。 -n 4是指ping 4次。因为大约是1秒钟ping一次,所以有睡眠4秒的效果,如果时长需要修改,那就修改这个数字。
sc stop 停止服务
sc start 启动服务
-
定时杀掉进程。
:start
ping 127.1 -n 2 >nul
taskkill /F /IM notepad.exe
goto start
:start 是一个标识,声明以便在后面 goto start, 实现无限循环的效果。
ping 127.1 -n 4 >nul 睡眠4秒,避免操作过快。
ping 127.1 -n 4是调用ping命令, 127.1是本地回路,必定能ping通。 -n 4是指ping 4次。因为大约是1秒钟ping一次,所以有睡眠4秒的效果,如果时长需要修改,那就修改这个数字。
taskkill /F /IM notepad.exe 杀掉名称为 notepad.exe的进程。 /F 标识强制结束进程。 /IM imagename,需要终止的进程的映像名称。
-
文件系统操作。
1.删除单个文件。
DEL /Q /F "D:\dir\file_to_del.txt"
参数: /Q(quiet安静模式,不提示确认) /F(force强制删除只读文件) "D:\dir\file_to_del.txt"(路径用\分隔而不要用/,跟参数会混淆导致意料之外的情况)
2.删除某一种后缀的文件。
DEL /Q /F "D:\dir\*.txt"
D:\dir\ 目录下的所有.txt文件都被删除,D:\dir\目录下的子目录里的.txt文件不会删除。
DEL /Q /F /S "D:\dir\*.txt"
参数:/S(subdir? 匹配到子目录,以及子目录的子目录...的文件都会删除)
D:\dir\ 目录下的所有.txt文件都被删除,D:\dir\目录下的子目录里的.txt文件也会删除。例如D:\dir\sub1\1.txt , D:\dir\sub2\2.txt 都会被删掉。
3.删除目录。
RD /Q "D:\dir"
参数: /Q(quiet安静模式,不提示确认) ,只能删除一个空目录。
RD /Q /S "D:\dir"
参数: /Q(quiet安静模式,不提示确认) /S(subdir?), 目录以及目录下的所有文件以及子目录都会被删除。
4.拷贝文件。
copy /Y "D:\A\x.txt" "D:\B\y.docx"
参数:/Y(目标文件存在时,不提示确认,批处理本就是为了自动完成还提示个毛线)。 把A目录下的 x.txt文件拷贝到B目录,并且修改名字以及后缀为y.docx。
copy /Y "D:\A\x.txt" "D:\B"
把A目录下的 x.txt文件拷贝到B目录,名字及后缀跟原来一致。
5.拷贝目录。
xcopy "D:\A" "D:\B" /Y /E /I
不存在就拷贝,存在就覆盖。
参数:/Y(不提示覆盖) /E(复制目录以及子目录,包括空目录,如果不拷贝空的目录则用/S),/I(目标不存在,则假定目标是个目录,没有这个参数,目标目录不存在时,就会提问你目标是个目录还是文件) 。据说此命令还能用来拷贝文件,不研究了。
6.创建目录。
MD "D:\A"
在D盘下创建名字为A的目录。
7.更改文件名或者目录名。
REN(RENAME) "D:\A\x.txt" "y.docx"
把A目录下的x.txt 改成 y.docx
REN(RENAME) "D:\A\*.txt" "*.docx"
通配符把A目录下的所有.txt 改成.docx。A目录下的子目录的不会更改。
REN(RENAME) "D:\A" "B"
把A目录改名成B。从此D盘不再有A目录,原来A目录的所有内容都在B目录。
-
mklink命令。
有些工具特别是开发工具,要求安装在C盘,日子久了,C盘就会越来越满。mklink命令可以让你在C盘创建一个目录,但是这个目录占用的是D盘的空间。
举个例子, 解决"C:\Program Files (x86)\Microsoft SDKs" 占用C盘大量空间问题。
a.先把这个目录改个名字或者移动到其他地方。
b.在命令行运行 mklink /J "C:/Program Files (x86)/Microsoft SDKs" "D:/Microsoft SDKs", 这时候 "C:/Program Files (x86)/Microsoft SDKs"被创建出来,
可当作正常的目录使用,在目录里的所有操作实际上实际上都是在"D:/Microsoft SDKs"。
c.把a中原来的"C:\Program Files (x86)\Microsoft SDKs"的所有内容都剪切到这个新建立的目录符号链接。
mklink命令用法:
MKLINK [[/D] | [/H] | [/J]] Link Target
/D 创建目录符号链接。默认为文件
符号链接。
/H 创建硬链接而非符号链接。
/J 创建目录联接。
Link 指定新的符号链接名称。
Target 指定新链接引用的路径
(相对或绝对)。
/D 创建的目录或者文件的快捷方式, 目前没想到什么情况下用。
/J 创建的目录联接,这时创建出来的目录与真实的目录用起来没有区别。可以用来解决C盘空间不足,或者某些软件例如itunes目录固定不变,可通过这种方式来变换目录。
/H 创建硬连接,主要是针对文件。把两个文件关联在一起了,从此同生死共存亡,任意一个修改,另外一个相应地变化。这种行为感觉比较危险,哪天说不定不小心改了本没想改的文件,没想到什么情况下使用。
/D /J参数对比
mklink /d "D:\B\C" "C:\A"
mklink /j "D:\B\D" "C:\A"
上面两个命令分别创建了C 目录(/D参数)以及D 目录(/J参数)。两个目录都有快捷方式的标识。
进入C目录,创建test.txt文件。
然后发现D目录以及源头的A目录都出现了这个文件。
这样用起来,C和D用起来区别不大。
在属性上看,C和D的就有区别了,C就是快捷方式,D的属性看起来更像一个真实的目录。
另外如果我们在浏览网页或者使用一些其他软件,需要选择一个文件路径时。
选择了C目录以后,实际上是跳转到A目录了,再向上返回就退回到A目录那边。
当选择的路径是D目录时,D目录的表现就真的是一个目录。
总结: /D /J对比, /J在转换目录更真实好用一些。 /D用起来就像仅仅创建快捷方式。