📄 hitme批处理集合.txt
字号:
00:00:17,820 --> 00:00:18,525
Charlie?
2
00:00:19,758 --> 00:00:20,506
Charlie?
3
00:00:21,535 --> 00:00:23,040
How about you and I go for a walk?
4
00:00:23,639 --> 00:00:24,356
No.
5
00:00:24,872 --> 00:00:27,217
No, thanks, Locke. I think I'm gonna stay in today.
要求合并后的文件如下
代码:
1
00:00:17,920 --> 00:00:18,625
Charlie?
Charlie?
2
00:00:19,858 --> 00:00:20,606
Charlie?
Charlie?
3
00:00:21,635 --> 00:00:23,140
和我一块儿去散步怎样?
How about you and I go for a walk?
4
00:00:23,739 --> 00:00:24,456
不
No.
5
00:00:24,972 --> 00:00:27,317
不,不去,Locke,今天我哪儿都不想去
No, thanks, Locke. I think I'm gonna stay in today.
想把中英文字幕合并起来,边看片子还可以边学学英文
其实软件上是可以同时加载2个字幕的,也可以实现要求
可是我现在看片子都是在Xbox上看,XBMC这个播放软件在同一时间只能支持一
个srt字幕,所以才会有此要求
设文件名为file1.txt file2.txt,以下内容保存为.bat文件执行
fuck.bat
代码:
del 1.txt 2.txt all.txt 合并后文档.txt
echo 加一行 >2.txt
type file2.txt >>2.txt
copy file1.txt 1.txt
:#源文件准备
findstr /n "." 1.txt 2.txt >tmp.txt
:#合并源文件并添加行号
for /l %%i in (1,1,500) do findstr /r "^1.txt:%%i:" tmp.txt
>>all.txt || findstr /r "^2.txt:%%i:" tmp.txt >>all.txt
:#分析,构造目标文件
for /f "tokens=3,* delims=:" %%i in (all.txt) do echo %%i%%j >>合并
后文档.txt
:#滤除多余信息
*交叉合并
------------------------------------------------------------
11.snap&compare 多个html的固定内容
有以下内容
http://www.abcd.com/pub/wrok1.html
http://www.abcd.com/pub/wrok2.html
http://www.abcd.com/pub/wrok3.html
.
..
...
http://www.abcd.com/pub/wrok(*).html
每个html,几乎整个html部分都是固定内容,除了我要监测的(文本方式打开
)第225行,第38位开始,75位结束这段,它们
有不定时的改变,所有html更新的部分也许不止这一个地方,但我只想监测这
一段
有没有软件或方法snap一次镜像,然后下次再snap后作出对上次snap的对比
,得出哪个url的html内容监测段作出了改变?
无错误控制,以下内容保存为.bat文件执行
snap&compare.bat
代码:
@echo off
del 差异.txt 2>nul
copy /y snap.txt snap_old.txt 1>nul
:#清理及悲愤snap
:snap
echo %date% %time% >snap.txt
:#加入时间戳
set url=http://www.abcd.com/pub/wrok
:#url变量赋值
for /l %%i in (1,1,100) do curl %url%%%i.html | findstr /n "." |
findstr /r "^225:" >>tmp.txt && echo %url%%%i >>tmp.txt
:#下载htm并过滤所需行
setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1* delims=:" %%i in (tmp.txt) do if "%%i" "http"
(echo %%i%%j !n! >>snap.txt) else set n=%%j
endlocal
:#整型快照
del tmp.txt
:#删除临时文件
:goto
if not exist snap_old.txt cls && echo 第一次建立快照文件
snap^.txt^,请再次运行snap^&compare^.cmd获取文件差异 && pause
&& goto end
:#判断是否存在对比快照,如不存在则不进行差异比较
:compare
findstr /n "." snap.txt >tmp1.txt
findstr /n "." snap_old.txt >tmp2.txt
:#为snap文本加入行号
for /l %%i in (2,1,100) do findstr /r "^%%i:" tmp1.txt tmp2.txt
>>tmp3.txt
:#以行号为序合并tmp文件
findstr /r "1:" tmp*.txt >>差异.txt
:#添加时间戳
setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1* delims=:" %%i in (tmp3.txt) do if %%i tmp1.txt
(set n=%%j) else (if %%j neq !n! echo %%j>>差异.txt)
endlocal
:#比较文本,计算差异行及行号
del tmp*.txt
:#清理临时文件
cls && echo 完成差异比较,请查看"差异.txt" &&
pause
end:
*两行并一行,相似文本比较
5. cmd
cmd下的一些文件处理:
1.保持文件夹结构,copy特定大小,时间,类型文件
2.保持文件夹结构,copy文件名,内容空
3.按文件数量移动文件到目标目录
4.copy某层(3..4..5)子目录下的文件到目标路径
5.删除文件夹中非某扩展名(如txt)的文件
6.copy不同文件夹下的同名文件到目标文件夹
7.同一文件copy到所有子文件夹中
8.处理所有扩展名为e??且不是exe的文件
9.每个文件生成一个同名文件夹,然后把各个文件拷贝到同名文件夹中
10.删除空文件夹
1.保持文件夹结构,copy特定大小,时间,类型文件
#特定类型
xcopy /s/y *.exe 目标路径
*很多单独的命令(dir;xcopy等)自身就富有变化,善用之
#特定大小
(例如小于50000字节,具体运算符号:EQU - 等于 NEQ - 不等LSS - 小于 LEQ
- NEQ - 不等于)
for /r %i in (*.*) do if %~zi lss 50000 xcopy /s "%i" 目标路径"%~pi"
*出动循环武器for命令,可与众多命令搭配使用,例如if,findstr,echo等等
*这里用它枚举子文件夹下的文件,%~zi扩冲为文件大小,交给if命令进行比较
运算,成功后xcopy至目标路径并copy文件夹
*for命令执行顺序)输入,for枚举,do...爱干吗干嘛
#特定时间
例:拷贝特定时间(2005-04-19)的文件,以下内容保存为.bat文件执行
代码:
setlocal ENABLEDELAYEDEXPANSION
for /r %%i in (*.*) do set dd=%%~ti && if "!dd:~0,8!" "05-04-19"
xcopy /s "%%i" 目标路径"%%~pi"
endlocal
*同上一条,还是for,if,xcopy,由于不能直接对for变量%~ti进行%~ti:~0,8这
样的扩展,变通一下,set给普通变量,再做扩展
*%var~:0,8%扩展的说明:两个数字表示偏移量和长度,具体参看set /?
*关于ENABLEDELAYEDEXPANSION延迟环境变量扩充,参看set /?,有实例说明
-----------------------------------------------
2.保持文件夹结构,copy文件名,内容空
xcopy /t/s *.* 目标路径
for /r %i in (*.*) do echoc >目标路径"%~pnxi"
*xcopy /t/s建立镜象文件夹,for /r in (*.*)枚举子文件夹中的文件,利用
echoc的bug,写入0字节文件
-----------------------------------------------
3.按文件数量移动文件到目标文件夹,以下内容保存为.bat文件执行
代码:
setlocal ENABLEDELAYEDEXPANSION
set /a n=0
:loop
set /a n=n+1
md 文件夹%n%
for %%i in (*.*) do move "%%i" 文件夹%n% & dir 文件夹%n% | findstr
/c:"100 个文件" && goto loop
endlocal
*需求将源文件夹中的文件,每100个移动至文件夹1..2..3
*for (*.*) do move一个 && 查找是否有100个了 && 找到跳出去,移动下
100个
-----------------------------------------------
4.copy某层(3..4..5)子目录下的文件到目标路径
#复制第3层文件夹下的文件到目标路径
dir /s/b/a:d >d.txt
for /f "tokens=1-4 delims=\" %i in (d.txt) do echo n | xcopy /e
"%i\%j\%k\%l" 目标路径
*dir 列出没有标题信息或摘要的子文件夹,并重定向到d.txt
*for /f ..(d.txt),分析d.txt,交xcopy复制
*也可以直接用for /f ..('dir /s/b/a:d') do dir输出会被抓进内存,当作
文件分析。分两行写主要是考虑到文件夹复杂时的脚本效率
-----------------------------------------------
5.删除文件夹中非某扩展名(如txt)的文件
for /f "delims=/" %i in ('dir /b/s *.*') do dir /b/s *.txt | find
"%i" || del "%i"
*抓dir *.*的输出,在dir *.txt输出中查找,没找到则不是txt文件,删除之
*可扩充为非txt+jpg+gif的文件,不会眼花了
-----------------------------------------------
6.copy不同文件夹下的同名文件到目标文件夹
文件夹1下面有一个文件123.jpg
文件夹2下面也有一个文件123.jpg,文件名相同,内容不同
文件夹3下面也有一个文件123.jpg,文件名相同,内容不同
……
我想搜索所有的文件123.jpg,copy到一个目标文件夹下,但是我用搜索->复
制,出现后者覆盖前者的问题,只能保留一个文件123.jpg,有没有
办法把这些同名文件拷贝到相同文件夹下?或者是说如何自动重命名搜索到的
文件?
dir /s/b 123.jpg | find /n "123.jpg" >temp.txt
for /f "tokens=1,2 delims=[]" %i in (temp.txt) do copy "%j" d:\123-
"%i".jpg
*枚举所有123.jpg文件的完整路径,并加上行号重定向到temp.txt
*for /f () do copy 同时重命名为123_行号.jpg,行号不会重复,利用一下
-----------------------------------------------
7.同一文件copy到所有子文件夹中
for /r %a in (.) do xcopy /y filename "%~pa"
*for /r ..(.) do 只枚举文件夹
-----------------------------------------------
8.处理所有扩展名为e??且不是exe的文件
for %i in (*.e??) do if /i "%~xi" neq ".exe" echo %i
-----------------------------------------------
9.每个文件生成一个同名文件夹,然后把各个文件拷贝到同名文件夹中
for %i in (*.*) do md "%~ni" && copy %i "%~ni"
------------------------------------------------
10.删除空文件夹
for /l %a in (1,1,9) do for /r %i in (.) do rd %~si
6. cmdhtm
list.rar
1.rar
7. cmd
cmd一些其他应用
1.快速建用户和共享文件夹
2.让服务器在空闲时自动关机或休眠
3.通过FTP自动备份文件
4.扫描一个网段.用for和ping.然后得到存活主机把结果存为ip和ip之间用,隔
开
5.DOS下文件列表按文件名长度递增排列
6.远程关机
1.快速建用户和共享文件夹
又要给学生机房装机了
因为现在有这样的要求:
在教师上加用户 (A1、A2、……A7、B1……H7)(对应学生机)
在教师机上建目录共享 (要对应机器.........)
就是要建A1目录给A1那台机用。
好繁啊,有什么好的介绍吗?
for %i in (a b c d e f h) do for /l %j in (1,1,7) do echo %i%j
>>name.txt
:#构造序号文件
for /f %i in (name.txt) do net user %i %i /add
:#天家用户
for /f %i in (name.txt) do md %i
:#建目录
for /f %i in (name.txt) do net share %i=盘符:\%i
:#共享目录
for /f %i in (name.txt) do cacls \%i /g %i:f administrator:f
:#配置权限,一路y回车,即可
*有for不繁
---------------------------------------------------------------
2.让服务器在空闲时自动关机或休眠
单位有一局域网,由于win2000的服务器代理上网,内网IP:192.168.0.*
因大家不定时上网,一般在后半夜便无人再使用网络,但也不能搞一刀切,不
能设定某个时间自动关机,现求一软件,能自动检测内网有无人开机,如果发
现在0点后,半个 小时无人上网,服务器则自动关机(或休眠),我发现
poweroff软件无法实现这个功能。希望大家帮忙。
run.bat #计划任务 0:30分执行这个bat。每30分钟重复执行.注意别ping了
服务器,没测试过,不太可靠
以下内容保存为.bat文件执行
代码:
del reply.txt
echo 关机日志 > reply.txt
for /l %%i in (2,1,254) do ping -n 1 192.168.0.%%i | find "Reply"
>>reply.txt
find "Reply" reply.txt || shutdown
---------------------------------------------------------------
3.通过FTP自动备份文件
机器 A
D:\\aaa\a\ ——》a.rar
D:\\bbb\ ————》b.rar
每 2个小时自动生成一个RAR文件,存放到 D:\\bak\日期\时间\ 目录下
(D:\\bak\2005-01-04\02.00\)然后自动通过FTP传送到 机器B(专用备份机
器)
请问谁能帮忙写个脚本 谢谢。 或者把压缩过程省略,直接传送文件夹也可以
?传送目录?flashfxp啊
以下内容保存为.bat文件执行
代码:
@echo off
path=%path%;c:\program files\winrar
:rar
set tdate=%date:~4,10%
set ttime=%time:~0,2%
mkdir "d:\bak\%tdate%\%ttime%"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -