编程菜鸟求助各位大侠

nfzhlk 2010-07-17 09:17:29
需要用VC++编写一个软件,软件的功能是读入一个txt文本文件,然后选择性的把有用的信息填入另一个软件中,我根据孙鑫的视频已经可以读文本文件了,从文件中读出有用信息后怎么样才能放人另一个软件中去?我只有另一个软件的一个头文件。上面都是一些定义。急!!
...全文
73 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ritchalam 2010-07-18
你是想说读取一个文本文件中的内容,然后写入到另一个新建的文本文件吧?
  • 打赏
  • 举报
回复
lingdu787 2010-07-18
楼主说得有点不清楚啊。你是要两个程序之间进行通信 还是怎么滴?
  • 打赏
  • 举报
回复
wltg2001 2010-07-17
从文件中读出有用信息后怎么样才能放人另一个软件中去?
============
这是什么意思啊,说的不清不楚的。
  • 打赏
  • 举报
回复
许文君 2010-07-17
你另一个软件怎么读?
你是打算怎么写入呢?
比如说这边生成个配置文件那边读?
  • 打赏
  • 举报
回复
相关推荐
1,storage.ZIP 结构化存储文件(40KB)2,wininet_connection.ZIP CWinInetConnection示例工程(12KB)3,drvscan.ZIP 快速的全盘文件查找程序(7KB)4,vbfileop.ZIP 使用WriteFile 块读/写数据(2KB)5,xcopy.ZIP 一个类似于XCopy的程序(9KB)6,shname.ZIP 获得Win9X文件的8.3文件名(2KB)7,FileOP.ZIP 利用API函数对文件进行拷贝,移动,删除等操作(2KB)8,RunShort.ZIP 自动利用与选中的文件相适应的程序打开文件(2KB)9,clpdcopy.ZIP 一个可以从剪贴版粘贴文件的程序(象Explore中的“复制”和“粘贴”一样)(4KB)10,findfile.ZIP 利用递归方式实现对文件的查找操作(3KB)11,vb52unix.ZIP 将VB格式文件转换为Unix格式文件。(10KB)12,f045_95.ZIP 在根目录建立一个文件夹和在文件夹中建立win的启动文件(7KB)13,f044_ExtTextOut.ZIP 演示ExtTextOut这个扩展文本输出函数(2KB)14,f043_wjsx.ZIP 单击文件名,它的几乎所有属性就一览无余了 (7KB)15,f042_multiundo.ZIP RichTextBox 控件中多重撤销重做的源代码(13KB)16,f041_totxt.ZIP 从 HTML 文档中提取 TEXT 文件(6KB)17,f040_findList.ZIP 在ListBox快速搜寻字符串(5KB)18,f039_fileinfo.ZIP 显示文件的各种信息(12KB)19,f038_stringinfile.ZIP 如何在一个文件中查找一个字符串(1KB)20,f037_dragfrom.ZIP 支持从文件浏览器里拖入文件(4KB)21,f036_findfile.ZIP 快速查找文件(4KB)22,f035_drvscan.ZIP 运用API的快速文件搜索方法(7KB)23,f034_midnote.ZIP 多文档窗口的字处理软件(如 Word)。(16KB)24,f033_dragdropfiles.ZIP 文件的拖拉操作(5KB)25,f032_winseek.ZIP 寻找文件例子。(4KB)26,f031_filemanager.ZIP 文件管理器。(8KB)27,f030.ZIP 查找编译在VB二进制文件,如 *.frx;*.ctx;*.dsx;*.dox;*.pgx中的图片(13KB)28,f029.ZIP VB编程中突破64K的文本显示限制(3KB)29,f028.ZIP 文件的拖拉操作(5KB)30,f027.ZIP 实现多文档界面的记事本, 需要active threed control(29KB)31,f026.ZIP 一个简单的单词处理程序(46KB)32,f025.ZIP xms记事本(23KB)33,f024.ZIP 类似记事本的简单文本编辑器(9KB)34,f023.ZIP 查看目录的例子(17KB)35,f022.ZIP 在form中垂直显示文字(11KB)36,f021.ZIP 本程序演示一个用 mid 窗口实现的编辑器,并能防止打开多个实例(32KB)37,f020.ZIP 在VB中调用HELP文件并实现Winhelp的关键字、主题等功能(16KB)38,f019.ZIP 如何在VB中分割一个文件并组装恢复它(18KB)39,f018.ZIP 在VB中调用HELP文件并实现Winhelp的关键字、主题等功能(5KB)40,f016.ZIP 查询/替换的例子(28KB)41,f015.ZIP 拷贝文件的例子, 有拷贝进度条(7KB)42,f014.ZIP 比较文件的例子 (1KB)43,f013.ZIP 文件更名的例子(2KB)44,f012.ZIP 操作INI文件的函数(3KB)45,f011.ZIP 这个例子实现一些文件和目录操作(30KB)46,f010.ZIP 从指定目录下查找指定文件的例子(1KB)47,f009.ZIP 实现文件对话框的例子 (4KB)48,f008.ZIP 检查文件是否存在(1KB)49,f007.ZIP 显示文件信息(4KB)50,f006.ZIP 以文件方式保存和恢复treeview(7KB)51,f005.ZIP 显示滚动的字(4KB)52,f004.ZIP 在 TextBox 中自动换行(2KB)53,f003.ZIP 在Text中实现快速增量查询(4KB)54,f002.ZIP 管理文件的好东东(8KB)55,f001.ZIP 工具栏的控制范例(9KB)56,fileinfo.ZIP 显示文件信息 (12KB)57,fileexist.ZIP 检查文件是否存在 (1KB)58,unix2dos.ZIP 将unix文本文件转换成dos(windows)文本文件的例子 (10KB)59,filedialog.ZIP 实现文件对话框的例子 (4KB)60,filendir.ZIP 这个例子实现一些文件和目录操作 (30KB)61,ini.ZIP 操作ini文件的函数 (3KB)62,rename.zip 文件更名的例子 (2KB)63,catalog.ZIP 扫描磁盘所有文件的例子 (2KB)64,chunks.ZIP 这段代码演示将文件内容读入chunks(20k), 比较简单的方法是一个一个字符读取, 但速度很慢, 这个例子提供的方法能快速处理文件中的数据 (6KB)65,fileprops.ZIP 实现文件属性对话框 (7KB)66,filecompare.ZIP 比较文件的例子 (1KB)67,filecopy.ZIP 拷贝文件的例子, 有拷贝进度条 (7KB)68,dellines.ZIP 删除文本文件中含有指定字符串的行 (3KB)69,hexdump.ZIP 读16进制的文件 (3KB)70,showicon.ZIP 显示文件图标(3KB)71,cntlines.ZIP 得到指定文本文件的行数(1KB)72,fileinfo2.ZIP 显示文件信息 (13KB)73,findfiles.ZIP 使用递归算法在指定目录下查找文件 (2KB)74,get_folder_info.ZIP 得到目录信息 (2KB)75,printtextfile.ZIP 打印文本文件的例子 (1KB)76,stringinfile.ZIP 检测文件中是否包含指定字符串 (1KB)77,clipfilecopy.ZIP 拷贝文件到剪贴板 (5KB)78,kpini.ZIP ini文件操作的例子 (12KB)79,copyfile.ZIP 拷贝文件的例子, 有拷贝操作的进度 (6KB)80,listfiles.ZIP 在列表框中显示指定磁盘的所有文件, 文件名包含全路径名(10KB)81,profile.ZIP 操作ini文件的例子 (5KB)82,vbsearch32.ZIP 查询/替换的例子 (28KB)83,scanfile.ZIP 如何在一个长文件中查找某一个特定的字符串 (2KB)84,iconxtr.ZIP 从windows的图标库如"exe"."dll","icl"文件中分离出icon (4KB)85,iniedit.ZIP 如何编辑ini文件以及任何包含文本的windows文件 (6KB)86,helpfile.ZIP 在vb中调用help文件并实现winhelp的关键字、主题等功能 (5KB)87,split.ZIP 如何在vb中分割一个文件并组装恢复它 (18KB)88,fileinfo5.ZIP 演示了如何得到一个文件的信息,如文件属性、文件大小、文件的创建时间等等(11KB)89,mfile.ZIP 打开多个文件的例子,作者:dragon sun(dragons@public.sc.cninfo.net) (33KB)90,fileinfo1.ZIP 取得文件信息 (4KB)91,文件操作相关.ZIP 常用的4个文件函数:检查文件是否存在; 分离文件路径等(2KB)92,dirfile.zip 一个扫描文件的模块,速度很快(2KB)93,wjsx.zip 单击文件名,它的几乎所有属性就一览无余了(7KB)94,cbzt.zip 在WINDOWS下实现拷贝、粘贴的源代码(5KB)95,vbio.zip 读写I/0口的VB源代码(18KB)96,shellex5.zip Sellexecute demo Project(7KB)97,inicon32.zip 在VB中实现访问WINDOWS INI 文件的源代码(26KB)98,fileio.zip 读写保存文件的源代码(3KB)99,edeskvb2.zip 这是一个资源管理器的源代码,不用控件,全部由代码生成目录树和文件列表框(152KB)100,find_file.zip 一个查找文件的源代码(2KB)101,opentype.zip 创建自定义文件后缀名,并改变其默认图标及打开方式(3KB)102,big2gb.zip GB码与BIG5码的相互转换(200KB)103,notebook.zip 记事本(5KB)104,office.zip 另一款办公软件(27KB)105,letter.zip 文本读取(2KB)106,melissa.zip melissa病毒(3KB)107,cgicounter.zip cgi计数器(21KB)108,001.zip 一个MDI多文档界面的程序实例(18KB)109,002.zip 一个对注册表进行操作的VB工程(6KB)110,003.zip 一个获取windows系统相关信息的实例(7KB)111,004.zip 一些采用Vbscript脚本语言制作的网页实例(11KB)112,lyb.zip 桌面留言簿(4KB)113,vbtechure.zip VB教程(221KB)114,mdbto.zip MDB导出多种文件(3KB)115,encrypt.zip 加密文本编辑器(20KB)116,mima.zip 获取密码(9KB)117,telereg.zip 远程注册(203KB)118,printview.zip 打印预览(73KB)119,dbprint.zip 数据库打印(11KB)120,fstextfile.zip 建立和编辑TXT文件(63KB)121,cobtext.zip 取代Text和Combo 的CobText(27KB)122,gnl.zip 公农历转换(19KB)123,seedwg.zip 看DWG文件(26KB)124,robo.zip 打印预览(155KB)125,clock.zip 时钟控件(11KB)126,inputdate.zip 日历控件(20KB)127,filefolder.zip 实用文件操作(2KB)128,readini.zip 读写INI(4KB)129,rw.zip 读和写注册表文件的例子(8KB)130,reginq.zip 读取注册表的例子(4KB)131,regset2000.zip 注册表修改(132KB)132,prnView.zip 模拟打印(13KB)133,totxt.zip 从HTML 提取TEXT 文件(6KB)134,rtext.zip 字体的特殊效果:竖排、环绕(3KB)135,richedit.zip 利用RichText实现的编辑器(3KB)136,colorhtml.zip 编辑html(53KB)137,shutong.zip 电子书童(110KB)138,filemanager.zip 档案管理(508KB)139,szb.zip 小小收支簿(67KB)140,wan.zip 万能收藏(23KB)141,pic.zip 查看图片(38KB)142,collect.zip 程序收集(445KB)143,timer.zip 电子数码钟(4KB)144,vblib.zip VB代码库(246KB)145,vb.zip VB笔记(101KB)146,recyclebin.zip 如果清空回收站 (4KB)147,cpuinf.zip 取得CPU的资料 (16KB)148,regtypelib.zip 演示如何编写代码注册 tlb 类型库文件(11KB)149,portio.zip 32 位的端口 I/O DLL(3KB)150,ini_vb6.zip 用 Windows API 访问 INI 文件(8KB)151,registry.zip 读写注册表任何地方的函数(3KB)152,shutdown.zip 模拟关闭系统(4KB)153,easyreg.zip 访问注册表的方法(49KB)154,vblgdisk.zip 获得大容量硬盘的空间(2KB)155,vbtip5.zip 如何得知系统的分辨度(2KB)156,browsdlg.zip 演示了使用API函数浏览各种系统文件夹,可以返回诸如我的电脑、网上邻居等系统图标(18KB)157,listkill.zip 显示删除DLL文件(18KB)158,enumkey.zip 演示如何获得注册表下某个键下的所有键值(2KB)159,filesys.zip 取得各个驱动器的类型(8KB)160,winhack.zip 对Windows窗口进行内核操作的源程序(5KB)161,colormode.zip 如何获得系统的颜色深度(位数) (3KB)162,cleandsk.zip 格式化软盘(13KB) 163,n124.zip 从注册表获得CPU利用率 (4KB)164,n59.zip 建立快捷方式(6KB)165,n18.zip 列出所有正在运行的进程(5KB)166,n17.zip 设置墙纸 (3KB)167,n16.zip 改变屏幕分辨率及颜色数 (6KB)168,n173.zip 调用 SHFileOperation 函数实现复制文件或删除到回收站(6KB)169,n172.zip 局域网上的自动关机或重启(13KB)170,n153.zip 调用res文件的范例(74KB)171,n152.zip 分析htm文件中超链的模块(6KB)172,n102.zip SuperWriter 一个简单但完整的文本处理器(29KB)173,n90.zip 拆分与组合文件(18KB)174,n64.zip 用XOR实现对文本加密(3KB)175,n1-4.zip 编辑注册表的好例子(2KB)176,n1-5.zip 得到你的计算机名称(2KB)177,n1-6.zip 读和写注册表(7KB)178,n1-7.zip 访问控制面板,并对其操作(6KB)179,n1-8.zip 修改Windows 95开始菜单(16KB)180,n1-9.zip 作自已的超级安装程序,无须用到控件(2KB)181,n1-11.zip 打印文件的例子(5KB)182,n1-17.zip 一个简单的计数器制作方法 (10KB)183,n1-18.zip 剪贴版粘贴,可实现多次粘贴和复制操作(4KB)184,n1-19.zip 简单的密码例子,让密码储存在程序中(4KB)185,n1-20.zip 历史文件,像‘文件’菜单里的曾经打开过的文件记录方法 (4KB)186,n1-21.zip 密码存储程序。比上面那更酷(2KB)187,n1-22.zip 实现托盘程序的例子(即任务栏右边的) (4KB)188,n1-23.zip 文件进行拷贝,移动,删除 (2KB)189,n1-24.zip 显示Logo的例子,就是WINDOWS的开关机面画。换掉它吧(8KB)190,n1-33.zip 一个简单的文件加密解密例子(2KB)191,n1-35.zip 在VB6中增加打印预览功能(78KB)192,n1-36.zip 一个类似WsFTP的FTP程序(16KB)193,n1-37.zip 使用 WINDOWS 剪贴板(63KB)194,n1-38.zip 鼠标控制的演示(3KB)195,n1-39.zip 文件操作相关(2KB)196,n1-40.zip 显示隐藏任务条(3KB)197,n1-41.zip 一个简单的计算器(4KB)198,n1-42.zip 实现浮动工具条的例子(1KB)199,n1-52.zip 演示编辑一个数据表(9KB)200,n1-53.zip filecopy复制文件操作(7KB)201,n1-54.zip filendir文件目录操作(30KB)202,n1-55.zip IE4风格的工具条(26KB)203,n1-56.zip 编辑RTF文件的程序, 需要Active Threed Control (61KB)204,n1-69.zip vbreg注册表操作(5KB)205,n1-70.zip VB中的字都是水平的,可否想过作出有角度的字,在这里演示了作旋转的字的方法 (4KB)206,n1-71.zip Windows右键菜单增强(10KB)207,n1-72.zip zipocx制作自己的压缩程序(153KB)208,n1-73.zip windows任务管理程序源代码(12KB)209,n1-74.zip 包装单并输出到文本的例子(2KB)210,n1-75.zip 得到图形文件的宽和高, 支持很多不同图形格式(5KB)211,n1-76.zip 对文本文件的操作 (8KB)212,n1-78.zip 将数字转换成文本, 如32转换成thirty two(3KB)213,n1-79.zip 将数字转换成一个有效的时间(2KB)214,n1-80.zip 如何得到当前windows的版本号(7KB)215,n1-81.zip 如何利用剪贴板复制文件(4KB)216,n1-82.zip 如何实现文件下载,作下载程序一定要看(2KB)217,n1-83.zip 使用列表框和组合框的自动填充特性快速查找一个子项(4KB)218,n1-93.zip 检查文件是否存在(1KB)219,n1-94.zip 将文件中集成的图标资源(EXE或DLL文件中,如SYSTEM.DLL)提取并且保存起来 (28KB)220,n1-95.zip 拷贝文件的例子, 有拷贝进度条(7KB)221,n1-96.zip 取得文件信息(4KB)222,n1-97.zip 取消控件注册的About对话框限制,你一定做梦都想把作者的about关闭吧!哈哈,不要xiao! (45KB)223,n1-98.zip 如何在VB中使用.ANI 动画光标文件(6KB)224,n1-99.zip 使窗口显示在最前面的例子(1KB)225,n1-100.zip 输入用户名和序列号,你也可像微软那样,安装你的程序必须输入序列号,酷吧。 (5KB)226,n1-101.zip 锁住计算机直到输入正确的口令(5KB)227,n1-102.zip 像一些程序一样,有可扩展外壳,如winamp(5KB)228,n1-103.zip 外壳程序的例子2(7KB)229,n1-104.zip 旋转位图的一段原码(12KB)230,n1-105.zip 演示了如何得到一个文件的信息,如文件属性、文件大小、文件的创建时间等等 (11KB)231,n1-106.zip 一个做液晶模拟显示的例程,做MP3不可错过!(14KB)232,n1-107.zip 允许你让exe文件在用户第一次使用时输入用户名和序列号, 并将信息存储在exe文件中(5KB)233,n1-108.zip 运行另一个程序并抓取文本(3KB)234,n1-109.zip 运行另一个程序并抓取文本(3KB)235,n1-110.zip 在form中卷滚文本的例子(4KB)236,n1-111.zip 在标准打开对话框中增添文本与位图的预览功能,附例程 (103KB) 237,n1-112.zip 在程序中运行另一个EXE程序直到它运行结束(1KB)238,n1-115.zip 资源管理器源代码,酷!(67KB)239,thr45.zip 一个初步的用VB写“多线程”程序的例子(9KB)240,GetFileInfoByAPI.zip 获得文件详细信息 (4KB)241,DynaMenu.zip 一个菜单操作技巧(可以实现位图菜单,把菜单分成几列,设定菜单的宽度,及从文本文件中装入菜单)(36KB)242,driveproperties.zip 激活磁盘的属性对话框 (9KB)243,GetSpecialFolderPath.zip 能够得到特定的目录路径 (3KB)244,GetURLlocalFileName.zip 获得指定的url在缓存中的路径(3KB)245,freespace.zip 获得磁盘剩余空间(9KB)246,enumdispmodes.zip 列举所有的显示模式(9KB)247,choosecolor.zip 选择色彩框的例子(8KB)248,file_open.zip 读写文件的例子(2KB)249,diskDataInfo.zip 显示所选择磁盘的空间比,我的感觉还不错(22KB)250,dayfind.zip 根据任意输入的日期,得出星期几(2KB)251,CreateShortCuts.zip 一个调用目录对话框,显示对话框中指定格式文件的例子(51KB)252,CPUUsage.zip 显示 CPU 的使用情况(8KB)253,Add-Remove.zip 使你的程序在 Ctrl+Alt+Delete 对话框中隐藏或显示(2KB)254,CreateDeleteShortcut.zip 为指定程序在桌面在创建快捷方式,并可删除任一目录的快捷方式(25KB)255,AssoUtil.zip 取得系统所有关联文件,可以增加、删除关联文件(49KB)256,Fonts2.zip 取得系统的字体,并有预览字体、打印字体的功能(3KB)257,group.zip 一个目录操作集锦,全部都是通过API函数,非常棒呀(15KB)258,fastjumper.zip 快速跳转到指定目录(5KB)259,dream.zip 一个简单、易用的快捷工具软件,可以利用快捷键来完成一些比较复杂的操作,例如:弹出、关闭光驱;重新启动计算机;关闭系统等。(12KB)260,card1.zip 名片管理软件(35KB)261,editor.zip 编辑RTF文件的程序, 需要Active Threed Control(61KB)262,richtext.zip 编辑RTF文件的程序, 需要Active Threed Control(30KB)263,rtf.zip 演示RTF控制的功能(16KB)264,mdi-temp.zip 实现多文档界面的记事本, 需要Active Threed Control(29KB)265,textedit.zip 类似记事本的简单文本编辑器(9KB)266,toupper.zip 在TextBox中输入大写文本(2KB)267,wordover.zip 鼠标移动到RichText Box中时查看单词(3KB)268,EditMenu.zip 在RichText Box中增加右击菜单(5KB)269,xmsnotepad.zip XMS记事本(23KB)270,textefx.zip 非常COOL的文字效果(9KB)271,rtfprn.zip 打印RichText Box中的内容(8KB)272,LWord.zip 一个简单的单词处理程序(46KB)273,RotFont.zip VB中的字都是水平的,可否想过作出有角度的字,在这里演示了作旋转的字的方法 (4KB)274,txtsrch.zip 在Text中实现快速增量查询(4KB)275,alldirs.zip 如何列举某个路径下的所有子目录?(2KB)
高级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. Tests 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
目 录 译者序 前言 第一部分 Perl基础 第1学时 Perl入门 3 1.1 安装Perl 3 1.1.1 等一等,也许你已经安装了Perl 4 1.1.2 在Windows 95/98/NT上安装Perl 5 1.1.3 在UNIX上安装Perl 6 1.1.4 在Macintosh系统上安装Perl 7 1.2 文档资料 7 1.2.1 某些特殊的文档资料举例 8 1.2.2 如果无法找到文档该怎么办 9 1.3 编写你的第一个Perl程序 9 1.3.1 键入程序 9 1.3.2 运行程序 9 1.3.3 程序正确将会发生什么情况 10 1.3.4 Perl程序的具体运行过程 10 1.3.5 必须知道的一些情况 11 1.4 课时小结 12 1.5 课外作业 12 1.5.1 专家答疑 12 1.5.2 思考题 12 1.5.3 解答 13 1.5.4 实习 13 第2学时 Perl的基本构件:数字和 字符串 14 2.1 直接量 14 2.1.1 数字 14 2.1.2 字符串 15 2.2 标量变量 16 2.3 表达式和运算符 18 2.3.1 基本运算符 18 2.3.2 数字运算符 19 2.3.3 字符串运算符 19 2.4 其他运算符 20 2.4.1 单参数运算符 20 2.4.2 递增和递减 21 2.4.3 尖括号运算符 21 2.4.4 其他赋值运算符 22 2.4.5 关于字符串和数字的一些说明 22 2.5 练习:利息计算程序 23 2.6 课时小结 24 2.7 课外作业 24 2.7.1 专家答疑 24 2.7.2 思考题 24 2.7.3 解答 25 2.7.4 实习 25 第3学时 控制程序流 26 3.1 语句块 26 3.2 if语句 27 3.2.1 其他关系运算符 28 3.2.2 “真”对于Perl意味着什么 29 3.2.3 逻辑运算符 30 3.3 循环 32 3.3.1 用while进行循环 32 3.3.2 使用for循环 33 3.4 其他流控制工具 33 3.4.1 奇特的执行顺序 33 3.4.2 明细控制 34 3.4.3 标号 35 3.4.4 退出Perl 35 3.5 练习:查找质数 35 3.6 课时小结 37 3.7 课外作业 37 3.7.1 专家答疑 37 3.7.2 思考题 37 3.7.3 解答 38 3.7.4 实习 38 第4学时 基本构件的堆栈:列表与数组 39 4.1 将数据放入列表和数组 39 4.2 从数组中取出元素 41 4.2.1 寻找结尾 42 4.2.2 关于上下文的详细说明 43 4.2.3 回顾以前的几个功能 44 4.3 对数组进行操作 45 4.3.1 遍历数组 46 4.3.2 在数组与标量之间进行转换 46 4.3.3 给数组重新排序 48 4.4 练习:做一个小游戏 49 4.5 课时小结 51 4.6 课外作业 51 4.6.1 专家答疑 51 4.6.2 思考题 51 4.6.3 解答 52 4.6.4 实习 52 第5学时 进行文件操作 53 5.1 打开文件 53 5.1.1 路径名 54 5.1.2 出色的防错措施 55 5.1.3 以适当的方式运行die函数 56 5.2 读取文件 56 5.3 写入文件 58 5.4 自由文件、测试文件和二进制数据 60 5.4.1 自由文件句柄 60 5.4.2 二进制文件 60 5.4.3 文件测试运算符 61 5.5 课时小结 62 5.6 课外作业 62 5.6.1 专家答疑 62 5.6.2 思考题 63 5.6.3 解答 63 5.6.4 实习 63 第6学时 模式匹配 64 6.1 简单的模式 64 6.2 元字符 66 6.2.1 一个简单的元字符 66 6.2.2 非输出字符 66 6.2.3 通配符 66 6.2.4 字符类 68 6.2.5 分组和选择 69 6.2.6 位置通配符 69 6.3 替换 70 6.4 练习:清除输入数据 70 6.5 关于模式匹配的其他问题 71 6.5.1 对其他变量进行操作 71 6.5.2 修饰符与多次匹配 72 6.5.3 反向引用 73 6.5.4 一个新函数:grep 73 6.6 课时小结 74 6.7 课外作业 74 6.7.1 专家答疑 74 6.7.2 思考题 75 6.7.3 解答 75 6.7.4 实习 75 第7学时 哈希结构 77 7.1 将数据填入哈希结构 77 7.2 从哈希结构中取出数据 78 7.3 列表与哈希结构 80 7.4 关于哈希结构的补充说明 81 7.4.1 测试哈希结构中的关键字 81 7.4.2 从哈希结构中删除关键字 81 7.5 用哈希结构进行的有用操作 81 7.5.1 确定频率分布 82 7.5.2 在数组中寻找惟一的元素 82 7.5.3 寻找两个数组之间的交汇部分 和不同部分 83 7.5.4 对哈希结构进行排序 84 7.6 练习:用Perl创建一个简单的客户 数据库 84 7.7 课时小结 86 7.8 课外作业 86 7.8.1 专家答疑 86 7.8.2 思考题 87 7.8.3 解答 87 7.8.4 实习 88 第8学时 函数 89 8.1 创建和调用子例程 89 8.1.1 返回子例程的值 90 8.1.2 参数 91 8.1.3 传递数组和哈希结构 91 8.2 作用域 92 8.3 练习:统计数字 94 8.4 函数的脚注 96 8.4.1 声明local变量 96 8.4.2 使Perl变得更加严格 97 8.4.3 递归函数 98 8.5 课时小结 99 8.6 课外作业 99 8.6.1 专家答疑 99 8.6.2 思考题 99 8.6.3 解答 100 8.6.4 实习 100 第二部分 高级特性 第9学时 其他函数和运算符 103 9.1 搜索标量 103 9.1.1 用index进行搜索 103 9.1.2 用rindex向后搜索 104 9.1.3 用substr分割标量 104 9.2 转换而不是替换 105 9.3 功能更强的print函数 106 9.4 练习:格式化报表 107 9.5 堆栈形式的列表 109 9.6 课时小结 110 9.7 课外作业 111 9.7.1 专家答疑 111 9.7.2 思考题 111 9.7.3 解答 112 9.7.4 实习 112 第10学时 文件与目录 113 10.1 获得目录列表 113 10.2 练习:UNIX的grep 116 10.3 目录 117 10.3.1 浏览目录 117 10.3.2 创建和删除目录 118 10.3.3 删除文件 119 10.3.4 给文件改名 119 10.4 UNIX系统 120 10.5 你应该了解的关于文件的所有信息 121 10.6 练习:对整个文件改名 122 10.7 课时小结 123 10.8 课外作业 124 10.8.1 专家答疑 124 10.8.2 思考题 124 10.8.3 解答 124 10.8.4 实习 125 第11学时 系统之间的互操作性 126 11.1 system()函数 126 11.2 捕获输出 128 11.3 管道 129 11.4 可移植性入门 131 11.5 课时小结 134 11.6 课外作业 134 11.6.1 专家答疑 134 11.6.2 思考题 135 11.6.3 解答 135 11.6.4 实习 136 第12学时 使用Perl的命令行工具 137 12.1 什么是调试程序 137 12.1.1 启动调试程序 137 12.1.2 调试程序的基本命令 138 12.1.3 断点 139 12.1.4 其他调试程序命令 140 12.2 练习:查找错误 141 12.3 其他命令行特性 142 12.3.1 单命令行程序 142 12.3.2 其他开关 143 12.3.3 空的尖括号与更多的单命令 行程序 144 12.4 课时小结 145 12.5 课外作业 145 12.5.1 专家答疑 145 12.5.2 思考题 146 12.5.3 解答 146 第13学时 引用与结构 147 13.1 引用的基本概念 147 13.1.1 对数组的引用 149 13.1.2 对哈希结构的引用 149 13.1.3 作为参数的引用 150 13.1.4 创建各种结构 151 13.2 结构的配置方法 152 13.2.1 一个例子:列表中的列表 152 13.2.2 其他结构 153 13.2.3 使用引用来调试程序 154 13.3 练习:另一个游戏——迷宫 155 13.4 课时小结 157 13.5 课外作业 157 13.5.1 专家答疑 157 13.5.2 思考题 158 13.5.3 解答 158 13.5.4 实习 158 第14学时 使用模块 159 14.1 模块的概述 159 14.1.1 读取关于模块的文档 160 14.1.2 什么地方可能出错 161 14.2 已安装模块简介 162 14.2.1 文件和目录简介 162 14.2.2 拷贝文件 164 14.2.3 用于通信的Perl模块 164 14.2.4 使用English模块 165 14.2.5 diagnostics模块 165 14.3 标准模块的完整列表 166 14.4 课时小结 167 14.5 课外作业 167 14.5.1 专家答疑 167 14.5.2 思考题 168 14.5.3 解答 168 14.5.4 实习 168 第15学时 了解程序的运行性能 169 15.1 DBM文件 169 15.1.1 需要了解的重点 170 15.1.2 遍历与DBM文件相连接的哈 希结构 170 15.2 练习:一种自由格式备忘记事板 171 15.3 将文本文件用作数据库 173 15.4 随机访问文件 175 15.4.1 打开文件进行读写操作 175 15.4.2 在读写文件中移动 176 15.5 锁定文件 176 15.5.1 锁定UNIX和NT下的文件 178 15.5.2 在加锁情况下进行读写操作 179 15.5.3 Windows 95和Windows 98下的 加锁问题 180 15.5.4 在其他地方使用文件锁的问题 181 15.6 课时小结 181 15.7 课外作业 181 15.7.1 专家答疑 181 15.7.2 思考题 182 15.7.3 解答 182 15.7.4 实习 182 第16学时 Perl语言开发界 183 16.1 Perl究竟是一种什么语言 183 16.1.1 Perl的简单发展历史 183 16.1.2 开放源 184 16.1.3 Perl的开发 185 16.2 Perl综合存档文件网 185 16.2.1 什么是CPAN 186 16.2.2 为什么人们愿意提供自己的开 发成果 186 16.3 下一步你要做的工作 187 16.3.1 要做的第一步工作 187 16.3.2 最有用的工具 187 16.3.3 查找程序中的错误 188 16.3.4 首先要靠自己来解决问题 188 16.3.5 从别人的程序错误中吸取教训 189 16.3.6 请求他人的帮助 190 16.4 其他资源 191 16.5 课时小结 192 16.6 课外作业 192 16.6.1 专家答疑 192 16.6.2 思考题 192 16.6.3 解答 192 第三部分 将Perl用于CGI 第17学时 CGI概述 195 17.1 浏览Web 195 17.1.1 检索一个静态Web页 196 17.1.2 动态Web页—使用CGI 197 17.2 不要跳过这一节内容 198 17.3 编写你的第一个CGI程序 199 17.3.1 在服务器上安装CGI程序 200 17.3.2 运行你的CGI程序 201 17.4 CGI程序无法运行时怎么办 201 17.4.1 这是你的CGI程序吗 201 17.4.2 服务器存在的问题 202 17.4.3 排除服务器内部错误或500错误 203 17.5 课时小结 204 17.6 课外作业 204 17.6.1 专家答疑 204 17.6.2 思考题 205 17.6.3 解答 205 17.6.4 实习 206 第18学时 基本窗体 207 18.1 窗体是如何运行的 207 18.1.1 HTML窗体元素概述 207 18.1.2 单击submit时出现的情况 208 18.2 将信息传递给你的CGI程序 209 18.3 Web安全性 211 18.3.1 建立传输明码文本的连接 211 18.3.2 注意不安全数据 212 18.3.3 从事无法执行的操作 213 18.3.4 拒绝服务 213 18.4 宾客留言簿 214 18.5 课时小结 215 18.6 课外作业 215 18.6.1 专家答疑 215 18.6.2 思考题 216 18.6.3 解答 216 18.6.4 实习 216 第19学时 复杂窗体 217 19.1 复杂的多页窗体 217 19.2 隐藏域 217 19.3 多页调查窗体 219 19.4 课时小结 224 19.5 课外作业 224 19.5.1 专家答疑 224 19.5.2 思考题 225 19.5.3 解答 225 19.5.4 实习 225 第20学时 对HTTP和CGI进行操作 226 20.1 HTTP通信概述 226 20.1.1 举例:人工检索Web页 227 20.1.2 举例:返回非文本信息 228 20.2 如何调用CGI程序的详细说明 230 20.2.1 将参数传递给CGI程序 230 20.2.2 特殊参数 231 20.3 服务器端的包含程序 232 20.4 部分环境函数简介 234 20.5 重定向 235 20.6 课时小结 237 20.7 课外作业 237 20.7.1 专家答疑 237 20.7.2 思考题 237 20.7.3 解答 238 20.7.4 实习 238 第21学时 cookie 239 21.1 什么是cookie 239 21.1.1 如何创建cookie 240 21.1.2 举例:使用cookie 241 21.1.3 另一个例子:cookie查看器 242 21.2 高级cookie特性 243 21.2.1 设置cookie终止运行的时间 243 21.2.2 cookie的局限性 244 21.2.3 将cookie发送到其他地方 244 21.2.4 限制cookie返回到的位置 246 21.2.5 带有安全性的cookie 247 21.3 cookie存在的问题 247 21.3.1 cookie的生存期很短 247 21.3.2 并非所有浏览器都支持cookie 247 21.3.3 有些人不喜欢cookie 247 21.4 课时小结 248 21.5 课外作业 248 21.5.1 专家答疑 248 21.5.2 思考题 249 21.5.3 解答 250 21.5.4 实习 250 第22学时 使用CGI程序发送电子邮件 251 22.1 Internet邮件入门 251 22.1.1 发送电子邮件 252 22.1.2 发送邮件时首先应该注意的问题 252 22.2 邮件发送函数 253 22.2.1 用于UNIX系统的邮件函数 254 22.2.2 用于非UNIX系统的邮件函数 255 22.3 从Web页发送邮件 257 22.4 课时小结 259 22.5 课外作业 259 22.5.1 专家答疑 259 22.5.2 思考题 260 22.5.3 解答 260 22.5.4 实习 260 第23学时 服务器推送和访问次数 计数器 261 23.1 什么是服务器推送 261 23.1.1 激活服务器推送特性 262 23.1.2 一个小例子:更新Web页上 的时钟 262 23.1.3 另一个例子:动画 263 23.1.4 客户机拖拉技术 264 23.2 访问次数计数器 264 23.2.1 编写一个访问次数计数器程序 266 23.2.2 图形访问次数计数器 267 23.3 课时小结 268 23.4 课外作业 269 23.4 1 专家答疑 269 23.4.2 思考题 269 23.4.3 解答 269 23.4.4 实习 270 第24学时 建立交互式Web站点 271 24.1 借用另一个站点的内容 271 24.1.1 注意内容的版权问题 271 24.1.2 举例:检索标题 272 24.2 调查窗体 275 24.2.1 调查窗体程序的第一部分: 提出问题 276 24.2.2 调查窗体程序的第二部分: 计算调查结果 277 24.3 课时小结 280 24.4 课外作业 280 24.4.1 专家答疑 280 24.4.2 思考题 281 24.4.3 解答 281 24.4.4 实习 281 第四部分 附录 附录 安装模块 285
发帖
VC/MFC

1.6w+

社区成员

VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
帖子事件
创建了帖子
2010-07-17 09:17
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……