新聞中心
此文本文檔由pdf格式轉(zhuǎn)換過來,由于轉(zhuǎn)換的限制,

代碼可能存在斷行的情況,在使用的過程中請注意檢查。
-----------------------------------------------------------------------------
1. CMD.mdb
1. 16<=>10
欲在cmd下轉(zhuǎn)進制,自己搞加減乘除? 喝多了頭疼死,算了
偷了把雞,利用ping和set幫忙運算了一把
hoho,什么都不會,就會投機,巨人肩膀上一站,技術在那里?
用法: DxH 數(shù)字
例如:
DxH 1234567
DxH 0x1234fd3
@echo off
if "%1" "" goto :syntax
if "%1" "/?" goto :syntax
:H2D
set tmpx=%1
if "%tmpx:~0,2%" "0x" (
for /f "delims=" %%i in ('set /a %1') do (
echo.
echo %1 = %%i
goto :end
)
)
:D2H
setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=2" %%i in ('ping %1 -n 1 -w 1 ^|find "Pinging"') do (
for /f "tokens=1-4 delims=." %%a in ("%%i") do (
set /a tmp1 = %%a / 16
set /a tmp2 = %%a - 16 * !tmp1!
set /a tmp3 = %%b / 16
set /a tmp4 = %%b - 16 * !tmp3!
set /a tmp5 = %%c / 16
set /a tmp6 = %%c - 16 * !tmp5!
set /a tmp7 = %%d / 16
set /a tmp8 = %%d - 16 * !tmp7!
for /l %%a in (1,1,8) do (
if !tmp%%a! 10 set tmp%%a=!tmp%%a:10=A!
if !tmp%%a! 11 set tmp%%a=!tmp%%a:11=B!
if !tmp%%a! 12 set tmp%%a=!tmp%%a:12=C!
if !tmp%%a! 13 set tmp%%a=!tmp%%a:13=D!
if !tmp%%a! 14 set tmp%%a=!tmp%%a:14=E!
if !tmp%%a! 15 set tmp%%a=!tmp%%a:15=F!
)
)
)
echo.
echo %1 = 0x!tmp1!!tmp2!!tmp3!!tmp4!!tmp5!!tmp6!!tmp7!!tmp8!
endlocal
:end
goto:eof
:syntax
cls
echo.
echo.DxH.cmd 16進制^<=^>10進制 互轉(zhuǎn)腳本. Written by hitme 2005.7.27
echo.
echo.用法: DxH 數(shù)字
echo.
echo.例如: DxH 1234567
echo. DxH 0x1234fd3
DxH.rar
2. CCF
attachment.rar
3. cmd
述求:有一個party,達到對到場人員,隨機分組玩團隊游戲的目的。
能夠隨意的輸入姓名,輸入完后,把隨機分組排列的姓名顯示在屏幕上
設姓名文本為name.txt,一個名字一行
分組規(guī)則為:4人一組
思路為:亂編號+編號排序=亂序,然后分組
隨機空間大小為10的3次方,幾十人的party應該夠了吧
準備好name.txt,保存為xy.cmd運行,自定義修改紅色部分
@echo off
for /f "delims=" %%i in (name.txt) do (
setlocal ENABLEDELAYEDEXPANSION
for /l %%a in (1,1,3) do (
echo %random% >nul
set m=!m!!random:~-1!
)
echo !m!!:%%i>>tmp.txt
endlocal
)
setlocal ENABLEDELAYEDEXPANSION
set /a num=0
set /a linenum=0
for /f "delims=" %%i in (tmp.txt) do set /a linenum=!linenum!+1
for /f "tokens=1,2* delims=: " %%i in ('sort tmp.txt ^| findstr /n
"."') do (
set n=%%k
set m=!m!!n!
set /a num=!num!+1
if !num! 4 (
echo !m!>>tmp1.txt
set /a num=0
set m=)
if "%%i" "!linenum!" (
if "!m!" neq "" echo !m!>>tmp1.txt)
)
endlocal
findstr /n "." tmp1.txt>list.txt
del tmp*.txt
start list.txt
xy.rar
4. cmd
cmd下的一些文本處理
開頭跑個題,插播個廣告,隆重推出,鐺鐺鐺鐺~~~,excel!excel!excel!
m$那個電子表格軟件?提它做什么?這題太跑了吧?
做行文本處理!排序,過濾,中間插入,翻個身,倒個個,奇偶行交換,抽取
1,4,9..行,合并,交叉合并,首行填充奇數(shù)行,等等72變
相比xnix shell,各種文本編輯軟件,決不遜色,入門還更容易,幫助文件更
為詳盡,實為居家旅行,殺人越貨的強手貨,沒有概念的趕緊試用。
使用時需要的僅僅是個思路。思路..思路很重要!
言歸正傳,還是cmd,用它做文本處理,只能算是勉為其難,湊合著用吧,常
做深呼吸,小心給"憋"著了
1.列表多個文本文件文件名+文件內(nèi)容
2.構造001.txt 002.txt 999.txt 文本內(nèi)容分別是text001 text002
3.構造http://..001|002|003../01|02|03.htm序列
4.將一堆文本形式的網(wǎng)址單獨轉(zhuǎn)換成IE收藏夾的快捷方式
5.將IE收藏夾導出為CSV格式文檔
6.有txt文件all.txt 和 a.txt 里面存放的是文件列表,求出a.txt里面沒有
,而all.txt里有的文件列表
7.文本文件中的單詞實現(xiàn)全文自動統(tǒng)計并排序
8.統(tǒng)計一個文本文件中某一單詞出現(xiàn)的次數(shù)?
9.GB和Maxthon群組轉(zhuǎn)換
10.合并2個字幕文本文件
11.snap&compare 多個html的固定內(nèi)容
1.列表多個文本文件文件名+文件內(nèi)容
find /v "" *.txt >list.txt
*繼續(xù)觀察自帶命令的有價值輸出
------------------------------------------------------------
2.構造001.txt 002.txt 999.txt 文本內(nèi)容分別是text001 text002
for /l %i in (1,1,9) do @echo text00%i >00%i.txt
for /l %i in (10,1,99) do @echo text0%i >0%i.txt
for /l %i in (100,1,999) do @echo text%i >%i.txt
*分段補零
-----------------------------------------------------------------
3.構造http://..001|002|003../01|02|03.htm文件,以下內(nèi)容保存為.bat文件
執(zhí)行
代碼:
setlocal ENABLEDELAYEDEXPANSION
for /l %%i in (1001,1,1162) do for /l %%j in (101,1,112) do @(set
s=%%i && set t=%%j && echo ^
rel="external nofollow" target="_blank" ^>!s
:~1,3!!t:~1,2!.jpg^
^endlocal
*嵌套for,兩組變量
*00x,0x序號構造,加減高位 ccfer su99原創(chuàng)
------------------------------------------------------------
4.將一堆文本形式的網(wǎng)址單獨轉(zhuǎn)換成IE收藏夾的快捷方式
for /f "tokens=1,2,3 delims=:/" %i in ('findstr /n "." 文本.txt') do
echo [InternetShortcut] >>%k_%i.url && echo url=http://%k
>>%k_%i.url
*沒什么特別的
------------------------------------------------------------
5.將IE收藏夾導出為CSV格式文檔,以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
for /f "tokens=1,3,4 delims=:" %%i in ('findstr /s "http" *.url') do
if %%k neq 0 (echo %%i,http:%%j:%%k >>list.csv) else echo
%%i,http:%%j >>list.csv
*findstr /s *.*得到文件相對路徑,利用之
------------------------------------------------------------
6.有txt文件all.txt 和 a.txt 里面存放的是文件列表,求出a.txt里面沒有
,而all.txt里有的文件列表
#有txt文件 all.txt 和 a.txt 里面存放的是文件列表,a.txt 是 all.txt 的
子集,求出a.txt里面沒有,而all.txt里有的文件列表
for /f "delims=" %i in (all.txt) do @findstr /x /c:"%i" a.txt >nul
|| @findstr /x /c:"%i " b.txt >nul || @echo %i>>b.txt
*連續(xù)的||..||應用
------------------------------------------------------------
7.文本文件中的單詞實現(xiàn)全文自動統(tǒng)計并排序
一個文本文件,每行有一個單詞或字符串(有重復的),幾千行。用word或
UE只能做到按字典順序重新排列、或選中某詞統(tǒng)計其個數(shù)。
有沒有一種方法能自動統(tǒng)計每一不同單詞的出現(xiàn)次數(shù),并輸出結果列表(加按
出現(xiàn)次數(shù)排序就更好了)。
源文件內(nèi)容:
abc
adfg
aew
dew
abc
abc
aew
adfg
abc
dew
adfg
ewq
abc
自動統(tǒng)計并排序后輸出列表(假設):
abc 5
adfg 3
aew 2
dew 2
ewq 1
設輸入文本為tmp
for /f "delims=" %i in (tmp) do @echo %i >> %i.txt
@findstr /n "." *.txt >tmp1
for /f "tokens=1-3 delims=:" %i in (tmp1) do @echo %k %j>%i
copy *.txt result.txt
*分類匯總,excel,awk。不合用的時候,cmd頂住
*行號=數(shù)量
------------------------------------------------------------
8.統(tǒng)計一個文本文件中某一單詞出現(xiàn)的次數(shù)?,以下內(nèi)容保存為.bat文件執(zhí)行
find_word.bat
代碼:
@echo off
setlocal ENABLEDELAYEDEXPANSION
set /p file=請輸入要查詢的文件名:
set /p name=請輸入要查詢的單詞:
set /a n=0
:loop
set /a n=n+1
for /f "tokens=%n% delims=,;.()[]{}!? " %%i in (%file%) do if /i %%i
equ %name% echo %name% >>%name%.txt
if %n% neq 255 (goto loop) else goto end
:end
for /f "delims=:" %%i in ('findstr /n "." %name%.txt') do set x=%%i
echo %name%出現(xiàn)的次數(shù)為:%x%
del %name%.txt
endlocal
*for進行單詞匹配,慢死人的那種,純屬yy
------------------------------------------------------------
9.GB和Maxthon群組轉(zhuǎn)換,以下內(nèi)容保存為.bat文件執(zhí)行
GB和Maxthon群組轉(zhuǎn).bat
代碼:
@echo off
:common
setlocal ENABLEDELAYEDEXPANSION
findstr "CaptorGroup" *.cgp && goto max_gb || goto gb_max
:max_gb
rd /s/q gb_group
md gb_group
for %%i in (*.cgp) do echo [Group]>>gb_group\\%%i
for %%a in (*.cgp) do for /f "tokens=1-4 delims :" %%i in ('findstr
/n "=" "%%a " ') do set /a n=%%i-2 && echo
name!n!=%%j>>gb_group\%%a && echo ^url!n!=%%k:%%l>>gb_group\%%a
goto end
:gb_max
rd /s/q max_group
md max_group
for %%a in (*.cgp) do for /f "tokens=2 delims " %%i in ('findstr
"." "%%a " ') do echo %%i>>max_group\%%~na.txt
for %%a in (max_group\*.txt) do echo
[CaptorGroup]>>max_group\%%~na.cgp
for %%a in (max_group\*.txt) do for /f "tokens=1,2 delims=: " %%i in
('findstr "." "%%a " ') do if "%%i" neq "http" (set
n=%%i) else (if "%%i" "http" echo
!n!=http:%%j>>max_group\%%~na.cgp)
del /q max_group\*.txt
goto end
endlocal
:end
cls
echo 轉(zhuǎn)換完成,請查看子目錄
pause
exit
*兩行并一行,一行拆兩行
------------------------------------------------------------
10.合并2個字幕文本文件
合并2個字幕文本文件
原始文件1如下
代碼:
1
00:00:17,920 --> 00:00:18,625
Charlie?
2
00:00:19,858 --> 00:00:20,606
Charlie?
3
00:00:21,635 --> 00:00:23,140
和我一塊兒去散步怎樣?
4
00:00:23,739 --> 00:00:24,456
不
5
00:00:24,972 --> 00:00:27,317
不,不去,Locke,今天我哪兒都不想去
原始文件2如下
代碼:
1
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個字幕的,也可以實現(xiàn)要求
可是我現(xiàn)在看片子都是在Xbox上看,XBMC這個播放軟件在同一時間只能支持一
個srt字幕,所以才會有此要求
設文件名為file1.txt file2.txt,以下內(nèi)容保存為.bat文件執(zhí)行
f.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的固定內(nèi)容
有以下內(nèi)容
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部分都是固定內(nèi)容,除了我要監(jiān)測的(文本方式打開
)第225行,第38位開始,75位結束這段,它們
有不定時的改變,所有html更新的部分也許不止這一個地方,但我只想監(jiān)測這
一段
有沒有軟件或方法snap一次鏡像,然后下次再snap后作出對上次snap的對比
,得出哪個url的html內(nèi)容監(jiān)測段作出了改變?
無錯誤控制,以下內(nèi)容保存為.bat文件執(zhí)行
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文件名,內(nèi)容空
3.按文件數(shù)量移動文件到目標目錄
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字節(jié),具體運算符號:EQU - 等于 NEQ - 不等LSS - 小于 LEQ
- NEQ - 不等于)
for /r %i in (*.*) do if %~zi lss 50000 xcopy /s "%i" 目標路徑"%~pi"
*出動循環(huán)武器for命令,可與眾多命令搭配使用,例如if,findstr,echo等等
*這里用它枚舉子文件夾下的文件,%~zi擴沖為文件大小,交給if命令進行比較
運算,成功后xcopy至目標路徑并copy文件夾
*for命令執(zhí)行順序)輸入,for枚舉,do...愛干嗎干嘛
#特定時間
例:拷貝特定時間(2005-04-19)的文件,以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
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%擴展的說明:兩個數(shù)字表示偏移量和長度,具體參看set /?
*關于ENABLEDELAYEDEXPANSION延遲環(huán)境變量擴充,參看set /?,有實例說明
-----------------------------------------------
2.保持文件夾結構,copy文件名,內(nèi)容空
xcopy /t/s *.* 目標路徑
for /r %i in (*.*) do echoc >目標路徑"%~pnxi"
*xcopy /t/s建立鏡象文件夾,for /r in (*.*)枚舉子文件夾中的文件,利用
echoc的bug,寫入0字節(jié)文件
-----------------------------------------------
3.按文件數(shù)量移動文件到目標文件夾,以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
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輸出會被抓進內(nèi)存,當作
文件分析。分兩行寫主要是考慮到文件夾復雜時的腳本效率
-----------------------------------------------
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,文件名相同,內(nèi)容不同
文件夾3下面也有一個文件123.jpg,文件名相同,內(nèi)容不同
……
我想搜索所有的文件123.jpg,copy到一個目標文件夾下,但是我用搜索->復
制,出現(xiàn)后者覆蓋前者的問題,只能保留一個文件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.掃描一個網(wǎng)段.用for和ping.然后得到存活主機把結果存為ip和ip之間用,隔
開
5.DOS下文件列表按文件名長度遞增排列
6.遠程關機
1.快速建用戶和共享文件夾
又要給學生機房裝機了
因為現(xiàn)在有這樣的要求:
在教師上加用戶 (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.讓服務器在空閑時自動關機或休眠
單位有一局域網(wǎng),由于win2000的服務器代理上網(wǎng),內(nèi)網(wǎng)IP:192.168.0.*
因大家不定時上網(wǎng),一般在后半夜便無人再使用網(wǎng)絡,但也不能搞一刀切,不
能設定某個時間自動關機,現(xiàn)求一軟件,能自動檢測內(nèi)網(wǎng)有無人開機,如果發(fā)
現(xiàn)在0點后,半個 小時無人上網(wǎng),服務器則自動關機(或休眠),我發(fā)現(xiàn)
poweroff軟件無法實現(xiàn)這個功能。希望大家?guī)兔Α?nbsp;
run.bat #計劃任務 0:30分執(zhí)行這個bat。每30分鐘重復執(zhí)行.注意別ping了
服務器,沒測試過,不太可靠
以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
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啊
以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
@echo off
path=%path%;c:\program files\winrar
:rar
set tdate=%date:~4,10%
set ttime=%time:~0,2%
mkdir "d:\bak\%tdate%\%ttime%"
rar a -r "d:\bak\%tdate%\%ttime%\a.rar" d:\aaa\*.*
rar a -r "d:\bak\%tdate%\%ttime%\b.rar" d:\bbb\*.*
:ftp
echo open ftp.hitme.com >ftp.txt
echo hitme >>ftp.txt
echo password >>ftp.txt
echo bin >>ftp.txt
echo hash >>ftp.txt
echo prompt >>ftp.txt
echo cd bak >>ftp.txt
echo lcd "d:\bak\%tdate%\%ttime%" >>ftp.txt
echo mkdir %tdate% >>ftp.txt
echo mkdir %tdate%/%ttime% >>ftp.txt
echo cd %tdate%/%ttime% >>ftp.txt
echo mput *.* >>ftp.txt
echo cd /bak >>ftp.txt
echo quit >>ftp.txt
ftp -s:ftp.txt
*echo 構造ftp.txt,利用了系統(tǒng)變量%date%,%time%的擴充形式
---------------------------------------------------------------
4.掃描一個網(wǎng)段.用for和ping.然后得到存活主機把結果存為ip和ip之間用,隔
開
for /l %i in (1,1,254) do @echo connecting 192.168.1.%i && @(for /f
"tokens=1,3 skip=2 delims=: " %j in ('ping 192.168.1.%i') do @if
'%j' 'Reply' @find "192.168.1.%i" list.txt > nul 2>nul || @echo
%k>>list.txt && @echo 192.168.1.%i connected)
*code by su99
*單行精品
---------------------------------------------------------------
5.DOS下文件列表按文件名長度遞增排列
如果一個目錄里面有如下四個文件(當然,實際中文件數(shù)量和文件名是隨機的)
1.txt,2.txt,10.txt,20.txt
在DOS下要如何使用如何才能讓他們按
1.txt
2.txt
10.txt
20.txt
輸出,而非
1.txt
10.txt
2.txt
20.txt
輸出?
我用的系統(tǒng)是xp~多謝大家~
for /l %a in (1,1,20) do @(if exist "%a.txt" echo %a.txt)
*思路是窮舉。前提是文件名有一定規(guī)律:除了數(shù)字外的部分要一樣,如果是
abc1.txt, xyz10.txt這樣亂來,這個方法就不管用了(嚴格說,如果是有限
個不同的pattern,仍然可以做到,不過麻煩一些)
*code by su99
or
list.bat,以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
@echo off
set t=....
:loop
set t=%t%.
dir /b /a:-d | findstr /r "^%t%$"
if "%t%" "........................." goto end
goto loop
:end
*findstr/r "^.....$過濾排序
---------------------------------------------------------------
6.遠程批量關機,以下內(nèi)容保存為.bat文件執(zhí)行
代碼:
for /l %%i in (1,1,254) do @(arp -d & ping 192.168.3.%%i -n 1 -w 100
& arp -a | find "00-00-00-00-00-00" > nul || shutdown -m
\\192.168.3.%%i -s -f)
*關閉了icmp,照關
8. cmd
cmd中一些符號的說明:
&
最簡單的組合命令,作用是連接n個命令,按順序執(zhí)行,不管是否有執(zhí)行失敗
。
a & b
#依次執(zhí)行a,b
&&
組合命令,與&命令不同之處在于,判斷是否有執(zhí)行失敗,如失敗將不繼續(xù)執(zhí)
行剩下的命令。
a && b
#a成功,b執(zhí)行
||
作用與&&相反
a || b
#a失敗,b執(zhí)行
連著用a && b || c,表示a成功,則執(zhí)行b,b失敗,則執(zhí)行c
>、>>
輸出重定向命令,將命令的輸出寫入到一個文件中。
區(qū)別:>覆蓋寫入,>>尾部追加寫入
echo a>a.txt
find /v "" *.txt >list.txt
|
管道命令,前一命令的輸出作為后一命令的輸入,常用于文本過濾操作
dir | find "hitme.exe"
9. cmdUnicode to ASCII
TYPE Unicode.txt > ASCII.txt
10. Curl-
CURL? 嗯,說來話長了~~~~
這東西現(xiàn)在已經(jīng)是蘋果機上內(nèi)置的命令行工具之一了,可見其魅力之一斑
1)
二話不說,先從這里開始吧!
curl http://www.yahoo.com
回車之后,www.yahoo.com 的html就稀里嘩啦地顯示在屏幕上了~~~~~
2)
嗯,要想把讀過來頁面存下來,是不是要這樣呢?
curl http://www.yahoo.com > page.html
當然可以,但不用這么麻煩的!
用curl的內(nèi)置option就好,存下http的結果,用這個option: -o
curl -o page.html http://www.yahoo.com
這樣,你就可以看到屏幕上出現(xiàn)一個下載頁面進度指示。等進展到100%,自然
就OK咯
3)
什么什么?!訪問不到?肯定是你的proxy沒有設定了。
使用curl的時候,用這個option可以指定http訪問所使用的proxy服務器及其
端口: -x
curl -x 123.45.67.89:1080 -o page.html http://www.yahoo.com
4)
訪問有些網(wǎng)站的時候比較討厭,他使用cookie來記錄session信息。
像IE/NN這樣的瀏覽器,當然可以輕易處理cookie信息,但我們的curl呢
?.....
我們來學習這個option: -D <-- 這個是把http的response里面的cookie信息
存到一個特別的文件中去
curl -x 123.45.67.89:1080 -o page.html -D cookie0001.txt
http://www.yahoo.com
這樣,當頁面被存到page.html的同時,cookie信息也被存到了
cookie0001.txt里面了
5)
那么,下一次訪問的時候,如何繼續(xù)使用上次留下的cookie信息呢?要知道
,很多網(wǎng)站都是靠監(jiān)視你的cookie信息,
來判斷你是不是不按規(guī)矩訪問他們的網(wǎng)站的。
新聞標題:創(chuàng)新互聯(lián)DOS手冊:hitme批處理集合URL鏈接:http://fisionsoft.com.cn/article/djohgoh.html


咨詢
建站咨詢
