文档库 最新最全的文档下载
当前位置:文档库 › 命令解释程序的编写实验报告

命令解释程序的编写实验报告

命令解释程序的编写实验报告
命令解释程序的编写实验报告

实验一、命令解释程序的编写实验

专业:软件工程姓名:麦婉仪学号:201106014149

一、实验目的

(1)掌握命令解释程序的原理;

(2)掌握简单的DOS调用方法;

(3)掌握C语言编程初步。

二、实验内容和要求

编写类似于DOS,UNIX的命令行解释程序

(1)自行定义系统提示符

(2)自定义命令集(8-10个)

(3)用户输入HELP以查找命令的帮助

(4)列出命令的功能,区分内部还是外部命令

(5)用户输入QUIT退出

(6)内部命令有dir, cd, md, rd, cls, date, time, ren, copy等。

三、实验方法、步骤及结果测试

1、本程序采用了c语言中的while语句和if …else if的嵌套的方法完成。将所需的命令字符串存到定义的数组内,从键盘输入利用strcmp进行筛选,若输入正确的命令会显示此命令的解释。输入“help”会提示,将命令提示全部显示出来,而输入“quit”就会退出程序。

2、主要程序段

#include

#include

# include

main()

{

char

cmd[30][30]={"dir","cd","md","rd","cls","date","time","ren", "copy","quit","help"};

char str[10];

int i;

while(1){

printf("请输入提示符:>");

gets(str);

for(i=0;i<20;i++){

{

if(strcmp(str,cmd[0])==0)

{

printf("类型:内部命令\n");

printf("查看当前的目录···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[1])==0)

{

printf("类型:内部命令\n");

printf("显示当前目录的名称···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[2])==0)

{

printf("类型:内部命令\n");

printf("创建一个新目录···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[3])==0)

{

printf("类型:内部命令\n");

printf("删除该目录....\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[4])==0)

{

printf("类型:内部命令\n");

printf("清屏···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[5])==0)

{

printf("类型:内部命令\n");

printf("显示或设置日期···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[6])==0)

{

printf("类型:内部命令\n");

printf("显示或设置系统时间···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[7])==0)

{

printf("类型:内部命令\n");

printf("重命名文件···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[8])==0)

{

printf("类型:内部命令\n");

printf("将至少一个文件复制到另一个位置···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[9])==0)

{

return 0;

}

这一段则是主要的程序内容,用while语句进行选择,然后用if…else if 进行嵌套。当输入对应的命令则可以显示其命令解释,还可输入help进行查看命令行提示,输入quit后则退出程序。利用strcmp进行判断,虽然程序较为冗余,但是清晰明了。

源代码:

#include

#include

# include

main()

{

char cmd[30][30]={"dir","cd","md","rd","cls","date","time","ren", "copy","quit","help"};

char str[10];

int i;

while(1){

printf("请输入提示符:>");

gets(str);

for(i=0;i<20;i++){

{

if(strcmp(str,cmd[0])==0)

{

printf("类型:内部命令\n");

printf("查看当前的目录···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[1])==0)

{

printf("类型:内部命令\n");

printf("显示当前目录的名称···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[2])==0)

{

printf("类型:内部命令\n");

printf("创建一个新目录···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[3])==0)

{

printf("类型:内部命令\n");

printf("删除该目录....\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[4])==0)

{

printf("类型:内部命令\n");

printf("清屏···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[5])==0)

{

printf("类型:内部命令\n");

printf("显示或设置日期···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[6])==0)

printf("类型:内部命令\n");

printf("显示或设置系统时间···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[7])==0)

{

printf("类型:内部命令\n");

printf("重命名文件···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[8])==0)

{

printf("类型:内部命令\n");

printf("将至少一个文件复制到另一个位置···\n");

printf("\n");

printf("\n");

break;

}

else if(strcmp(str,cmd[9])==0)

{

return 0;

}

else if(strcmp(str,cmd[10])==0)

{

printf("类型:外部命令\n");

printf("dir\t内部命令显示一个目录中的文件和子目录。\n");

printf("cd\t内部命令显示当前目录的名称或将其更改。\n");

printf("md\t内部命令创建一个目录。\n");

printf("rd\t内部命令删除目录。.\n");

printf("cls\t内部命令清除屏幕。\n");

printf("date\t内部命令显示或设置日期。\n");

printf("time\t内部命令内部命令显示或设置系统时间。\n");

printf("ren\t内部命令重新命名文件。\n");

printf("cope\t内部命令将至少一个文件复制到另一个位置。\n");

printf("help\t外部命令提供Windows命令的帮助信息。\n");

printf("quit\t外部命令退出命令解释程序\n");

printf("\n");

printf("\n");

/* printf("CALL\t从一个批处理程序调用这一个。\n");

printf("CMD\t打开另一个Windows命令解释窗口。\n");

printf("COLOR\t设置默认控制台前景和背景颜色。\n");

printf("DEL\t删除至少一个文件。\n");

printf("EXIT\t退出命令解释程序。\n");

printf("FIND\t在一个或多个文件中搜索一个文本字符串。\n");

printf("MKDIR\t创建一个目录。\n");

printf("MODE\t配置系统设备。\n");

printf("PRINT\t打印一个文本文件。\n");

printf("REPLACE\t替换文件。\n");

printf("RENAME\t重新命名文件。\n");*/

break;

}else if(strcmp(str,cmd[i])!=0){

printf("此命令不是内部或外部命令,也不是可运行的程序或批处理文件\n");

printf("\n");

break;}

}

}

}

}

3、运行结果分析

这是进入程序的界面

Dir命令

Help命令

输入错误命令

退出命令

四、实验总结

做这个程序的时候遇到很多问题,因为对c语言不太熟悉,但是经过了上网查找及同学的指导后,我顺利的做出了这个程序。经过了这次实验,我对c语言有了深一步的了解,希望以后更加熟悉然后能用C语言弄出更多小程序。

CAD常用命令汇总及详解

CAD中有哪些命令?我们可以把它们分为几类。一类是绘图类,二类是编辑类,三类是设置类,四类是其它类,包括标注、视图等。我们依次分析。 第一类,绘图类。常用的命令有: Line 直线 Xline 构造线 mline 双线 pline 多义线 rectang 矩形 arc 圆弧 circle 圆 hatch 填充 boundary 边界 block 定义块 insert 插入快 第二类,编辑类。常用的命令有: Matchprop 特性匹配 Hatchedit 填充图案编辑 Pedit 多义线编辑 Erase 擦除 Copy 拷贝 Mirror 镜像 Offset 平移 Array 阵列 Move 移动 Rotate 旋转 Scale 缩放 Stretch 拉伸 Lengthen 拉长 Trim 裁减 Extend 延伸 Break 打断 Fillet 倒圆角 Explode 炸裂 Align 对齐 Properties 属性

绘图工具栏: 直线(L):全称(line) 在屏幕上指定两点可画出一条直线。也可用相对坐标 或者在正交模式打开的情况下,直接给实际距离鼠标拖动来控制方向 构造线(XL):全称(xline) H为水平V为垂直O为偏移A为角度B为等分一个角度。 多段线(PL):全称(pline) 首先在屏幕上指定一点,然后有相应提示: 指定下一个点或[圆弧(A)/半宽(H)/长度(L)/放弃(U)/宽度(W)]。可根据需要来设置。 其中“圆弧”指定宽度可画任意角度圆弧;“半宽”指多段线的一半宽度,即如要高线宽为10,则5;“长度”给相应的值,则画出相应长度的多段线;“放弃”指放弃一次操作;“宽度”指多段线的宽度 多边形(pol):全称(polygon) 所绘制多边形为正多边形,边数可以自己设 E:根据边绘制多边形也可根据圆的半径利用外切和内接来画正多边形 矩形(REC):全称(rectang) 点击矩形工具后出现下列提示: 指定第一个角点或[倒角(C)/标高(E)/圆角(F)/厚度(T)/宽度(W)] 其中“倒角”是将90度直角的两条边割去一点。变成一个斜角。“标高”是空间上的意义可以在三视图当中展现出来,标高是相对的;“圆角”:即是将四个直角边倒成半径为X的圆角;“厚度”:空间上的意义,可在Z轴上表现出来“宽度”:平面空间的概念,指矩形四边的宽度。 圆弧(ARC或A):默认为3点画圆弧,成弧方向为逆时针,画优弧半径给负值。绘图菜单中有如下选项: 起点、圆心、端点; 起点、圆心、角度; 起点、圆心、长度; 起点、端点、角度; 起点、端点、方向; 起点、端点、半径; 圆心、起点、端点; 圆心、起点、角度; 圆心、起点、长度;

常用网络测试命令实验报告

西安郵電學院 计算机网络技术及应用实验 报告书 院部名称:管理工程学院 学生姓名:XXX 专业名称:信息管理与信息系统班级:10XX 学号:0210XXXX 时间:2012年 5 月 4 日

一、实验目的 1.掌握基本的网络知识。 2.掌握CMD一些基本命令,并学会运用这些命令排除一些基本问题。 二、具体实验内容及步骤 1.Ping命令的使用 点击―开始‖—〉―运行‖,在―运行‖对话框―打开‖后键入cmd,按―确定‖,到命令行方式下。 实验步骤: 1)回环测试。这个ping命令被送到本地计算机IP软件。这一命令可以用来检测TCP/IP的安装或运行存在的某些最基本的问题。 C:\>ping 127.0.0.1 2)Localhost是127.0.0.1的别名,我们也可以利用localhost来进行回环测试,每台计算机都能够将名称localhost转换成地址127.0.0.1。如果做不到这一点,则表示主机文件(host)中存在问题。 C:\>ping localhost

3)Ping本机IP。若无回复,说明本地计算机的TCP/IP安装或配置存在问题。 C:\>ping –t 192.168.2.37 在命令中加入参数-t,本地计算机应该始终对该ping命令做出应答,使用ctrl+C终止操作。 4)Ping局域网内其它主机IP。该命令对局域网内的其它主机发送回送请求信息。

如果能够收到对方主机的回送应答信息,表明本地网络中的网卡和传输媒体运行正常。 C:\>ping 192.168.2.55 5)Ping网关:如果能够收到应答信息,则表明网络中的网关路由器运行正常。 C:\>ping 192.168.2.1 6)Ping域名服务器:如果能够收到应答信息,则表明网络中的域名服务器运行正常。 C:\>ping 202.117.128.2

windows文本命令窗口help文档

C:\Users\zwh>help 有关某个命令的详细信息,请键入HELP 命令名 ASSOC 显示或修改文件扩展名关联。 ATTRIB 显示或更改文件属性。 BREAK 设置或清除扩展式CTRL+C 检查。 BCDEDIT 设置启动数据库中的属性以控制启动加载。CACLS 显示或修改文件的访问控制列表(ACL)。 CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。 CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间磁盘检查。 CLS 清除屏幕。 CMD 打开另一个Windows 命令解释程序窗口。COLOR 设置默认控制台前景和背景颜色。 COMP 比较两个或两套文件的内容。 COMPACT 显示或更改NTFS 分区上文件的压缩。CONVERT 将FA T 卷转换成NTFS。您不能转换 当前驱动器。 COPY 将至少一个文件复制到另一个位置。 DA TE 显示或设置日期。 DEL 删除至少一个文件。 DIR 显示一个目录中的文件和子目录。 DISKCOMP 比较两个软盘的内容。 DISKCOPY 将一个软盘的内容复制到另一个软盘。DISKPART 显示或配置磁盘分区属性。 DOSKEY 编辑命令行、调用Windows 命令并创建宏。DRIVERQUERY 显示当前设备驱动程序状态和属性。 ECHO 显示消息,或将命令回显打开或关上。ENDLOCAL 结束批文件中环境更改的本地化。 ERASE 删除一个或多个文件。 EXIT 退出CMD.EXE 程序(命令解释程序)。 FC 比较两个文件或两个文件集并显示它们之间的不同FIND 在一个或多个文件中搜索一个文本字符串。FINDSTR 在多个文件中搜索字符串。 FOR 为一套文件中的每个文件运行一个指定的命令。FORMAT 格式化磁盘,以便跟Windows 使用。 FSUTIL 显示或配置文件系统的属性。 FTYPE 显示或修改用在文件扩展名关联的文件类型。GOTO 将Windows 命令解释程序指向批处理程序 中某个带标签的行。 GPRESULT 显示机器或用户的组策略信息。 GRAFTABL 启用Windows 在图形模式显示扩展字符集。

ORACLE SQLPLUS 常用命令及解释

Oracle SQLPlus常用命令及解释 1.@ 执行位于指定脚本中的SQLPlus语句。可以从本地文件系统或Web服务器中调用脚本。可以为脚本中的变量传递值。在iSQL*Plus中只能从Web服务器中调用脚本。 2.@@ 执行位于指定脚本中的SQL*Plus语句。这个命令和@(“at”符号)命令功能差不多。在执行嵌套的命令文件时它很有用,因为它会在与调用它的命令文件相同的路径或url中查找指定的命令文件。在iSQL*Plus中只支持url形式。 3./ 执行保存在SQL缓冲区中的最近执行的SQL命令或PL/SQL块。在SQL*Plus命令行中,可在命令提示符或行号提示符使用斜线(/)。也可在iSQL*Plus的输入区中使用斜线(/)。斜线不会列出要执行的命令。 4.ACCEPT 可以修改既有变量,也可定义一个新变量并等待用户输入初始值,读取一行输入并保存到给出的用户变量中。ACCEPT在iSQL*Plus中不可用。 5.APPEND 把指定文本添加到SQL缓冲区中当前行的后面。如果text的最前面包含一个空格可在APPEND和text间输入两个空格。如果text的最后是一个分号,可在命令结尾输入两个分号(SQL*Plus会把单个的分号解释为一个命令结束符)。APPEND 在iSQL*Plus中不可用。 6.ARCHIVE LOG 查看和管理归档信息。启动或停止自动归档联机重做日志,手工(显示地)归档指定的重做日志,或者显示重做日志文件的信息。 7.ATTRIBUTE 为对象类型列的给定属性指定其显示特性,或者列出单个属性或所有属性的当前显示特性。 8.BREAK 分开重复列。指定报表中格式发生更改的位置和要执行的格式化动作(例如,在列值每次发生变化时跳过一行)。只输入BREAK而不包含任何子句可列出当前的BREAK定义。 9.BTITLE 在每个报表页的底部放置一个标题并对其格式化,或者列出当前BTITLE定义。

习题10解答

习题10 10.1何谓操作系统与用户的接口?有哪几种类型?其主要的功能是什么? 操作系统与用户接口的目标就是提供一个友好的用户访问操作系统的接口,使得用户能将自己的要求告诉操作系统,同时也要构造一个反向接口使系统能够利用该接口告知用户目前的工作情况。 一般,操作系统为用户提供两种接口:一类用于程序一级的编程接口,供用户程序和系统程序调用操作系统的服务和功能,由一组系统调用(system call)和高级语言库函数组成。另一类是用于作业(或功能)控制一级,供用户组织和控制自己的作业运行,其中又分为脱机用户和联机用户两种不同的接口。前者对应命令或脚本(脱机);后者体现为交互式联机命令行、菜单式或GUI图形用户接口(联机)。 10.2命令文件是什么?它完成什么功能?如何组织命令文件? 把所需执行的一系列命令组装成文件,然后用文件名作为命令名执行所需命令序列,从而自动控制作业的运行,例如,MS-DOS操作系统中的批处理(扩展名为BA T),用户可预先把一系列命令组织在BA T文件中,一次建立,多次执行。 例如: echo on file 25 buffers 20 remark 设置有关文件与缓冲区 copy a:\data\*.exe d:\fox\data > null edit main.prg foxplus echo off 有的操作系统还支持在命令文件使用循环、分支、转移、判别等语法结构,可以写出带形式参数的批命令文件,甚至允许嵌套形式调用其他命令文件。当带形式参数的批命令文件执行时,可用不同的实际参数去替换,因而,此类批命令文件便可以执行不同的命令序列,大大增强了命令接口的处理能力。例如,UNIX和Linux的Shell不但是一种交互型命令解释程序,也是一种命令级程序设计语言解释系统,它允许用户使用Shell简单命令、位置参数和控制流语句编制带形式参数的批命令文件,称作Shell文件或Shell过程,Shell可以自动解释和执行该文件或过程中的命令。 命令文件方式实现了联机状态下的批处理操作,对一些重复运行的作业非常有用。 10.3试说明命令解释程序的主要功能。 命令解释程序是操作系统最重要的系统程序,其主要功能是读人作业控制卡或接收用户输入的命令行,作出相应的解释并执行该命令提出的对作业的处理要求。命令解释程序通常会保存一张命令名字(动词)表,其中记录着所有操作命令及其处理程序的人口地址或相关信息。当一个新的批作业被启动,或新的联机用户登录进系统时,系统就自动地执行命令解释程序(详见第2章有关作业控制部分的讨论)。 10.4什么是系统调用?它的主要功能是什么?请举例说明Linux系统调用的使用。 系统调用是操作系统提供给用户编程的惟一接口,即用户在程序中调用操作系统所提供的相关功能,动态请求和释放系统资源,完成与计算机硬件部分相关的工作以及控制程序的

实验一 常用网络命令的使用 实验报告

实验一、常用网络命令的使用 课程计算机网络班级2013167 姓名郑棋元 完成日期15年4月2 日课(内、外)总计本实验用时间四个小时【实验目的】 1.掌握常用网络命令的使用方法; 2.熟悉和掌握网络管理、网络维护的基本内容和方法 【实验内容】 1.阅读实验指导书提供的资料,结合本地环境对WINDOWS 常用网络命 令进行测试和练习。 2.分析总结实验场地的网络环境、拓扑结构、上网方式等。 【实验步骤和结果】 ⑴ARP:

⑵ftp

⑶Ipconfig ⑷Nbtstat

⑸net: ⑹Netstat ⑺Ping

⑻Route ⑼Telnet 没能调试出来⑽Tracert

【实验思考题】 1.说明如何了解本机及其所处网络的网络配置信息? 输入Ipconfig/all(该诊断命令显示所有当前的 TCP/IP 网络配置值) 2.若网络出现故障,说明使用网络命令进行故障检测的常用步骤? 运用Ping(验证与远程计算机的连接) ping 任一IP地址,如果能ping通,说明你的电脑的TCP/IP没有错误。 ping 自己的IP地址,如果能ping通,说明你的网卡都正常。 ping 路由。如果能通,说明你的主机到路由的物理连接还都正常。 ping 网址。如果能通却还是打不开网页,说明dns有错误。 【实验总结】 常用的网络命令虽然看起来简单,可能觉得没什么用处,但是对于网络问题的诊断却非常有用。用windows系统自带的命令行中的常用网络命令来诊断网络故障,不仅快捷,而且信息反映直观。 【实验心得与体会】 掌握了很多常用却不知道或知道却不熟悉的网络命令的使用方法,知道了两台PC机之间传输文件的多种方式。

UNIX命令

入门介绍和常用命令 如果文件系统磁盘空间不足,则可能出现停止服务等反常现象。 建议各现场系统环境维护人员要定期检查一下Domain所在文件系统的磁盘空间是否足够。命令: df -k df -m df -g等。 历史: BSD,SYSTEM V 主流商业版本 SUN SOLORIS IBM AIX HP-UX Tru64 UNIX LINUX 登录和用户管理 进入系统 login: passwd: 字符方式: 字符终端(console,tty) telnet,term-tools 图形方式(x-window protocal): 从主机登录; 图形终端工具(reflection,hummingbird,cygwin,etc.) Change passwd: $ passwd old password: new password: reenter new password: chsh $ chsh /bin /sh /bin /csh User informaiton defined in /etc/passwd,readonly for ordinary users.

$ man cmd $ docsearch $ wheris cmd $ which cmd Command Search Path $ echo $PATH 查看自己的用户名 $ whoami who ,w 查看当前谁在系统上 users, u 查看当前系统的用户 id 看登录用户 finger user 查看user 的信息 ps 显示当前进程状况 ps –u user 显示用户名为user 的进程状况 进程调度 后台运行 $ cmd & $ cmd1;cmd2;cmd3 $ cmd1&&cmd2&&cmd3 $ cmd1||cmd2||cmd3 从后台转到前台 $ jobs #查找 $ fg %n 定时任务 at,cron $ at time cmd $ crontab –l $ crontab –e $ crontab user # root can edit other users? crontab 重定向和管道 stdin,stdout,stderr $ cmd >file $ cmd

网络连接性能的测试实验报告

网络连接性能的测试实验报到实验目的:(1)熟悉利用ping命令工具来进行测试 (2)熟悉利用Ipconfig工具来进行测试 (3)熟悉利用网络路由跟踪Tracert进行测试 实验性质:验证性实验 实验器材:计算机(已安装Windows XP) 实验步骤: (1)利用Ping命令工具进行测试 a)检查本机的 TCP/IP 协议安装是否正确 方法:输入Ping 127.0.0.1 结果: 本机的TCP/IP 协议安装正确 b)测试本台计算机上TCP/IP的工作情况。 方法:输入Ping 192.168.1.1(本机的IP地址) 结果: 本机的TCP/IP工作正常 c)用Ping工具测试其他计算机上TCP/IP的工作情况

方法:输入Ping 219.136.19.170(其他计算机上IP地址)结果: 其他计算机上TCP/IP的工作正常 e) 用Ping工具测试和远程计算机的连接情况 方法:输入Ping https://www.wendangku.net/doc/841434197.html, 结果: 本计算机和远程计算机的连接 (2)用Ipconfig工具来进行测试 运行Ipconfig命令 方法:输入Ipconfig/all 结果:

(3)利用网络路由跟踪Tracert进行测试

a)跟踪路由 方法;输入Tracert 192.168.1.1(本计算机网关地址) 结果: b)测试本计算机到所经过的路由数 方法:输入Tracert 结果: 3G 3G(英语 3rd-generation)是第三代移动通讯技术,是指支持高速数据传输的蜂窝移动通讯技术。3G服务能够同时传送声音及数据信息,速率一般在几百kbps以上。3G是指将无线通信和国际互联网等多媒体通信结合的新一代移动通信系统,目前3G存在3种标准:CDMA2000、WCDMA、TD-SCDMA。 3G下行速度峰值理论可达3.6Mbit/s(一说2.8Mbit/s),上行速度峰值也可达384kbit/s。不可能像网上说的每秒2G,当然,下载一部电影也不可能瞬间完成。

命令行解释程序报告

北京联合大学《操作系统课程设计》实验一:命令行解释程序 学院:信息学院 专业:计算机科学与技术 班级:计算机1203B 姓名:谢申兵 学号:2012080332071 2015年7月18日

一.采用的数据结构说明 字符数组: 本程序中包含的字符数组有: filename1[20]:在Ccopy()函数中,存储源文件路径和名字的字符数组。 filename2[20]:在Ccopy()函数中,存储目标文件路径和名字的字符数组。 oldname[20]:在Cmv()函数中用来保存源文件路径和名字的字符数组。 newname[20]:在Cmv()函数中用来保存目标文件路径和名字的字符数组。 Cho2[6]:存取用户输入的指令,并用来作为Switch分支的判定条件之一。 File[20]:Cerase()函数中用来存放要删除的文件的路径和名字的字符数组。 Word[100]:在Cdis()中存放用户要回显的字符串。 二.源程序清单、注释和流程图 (1)流程图

程序开始 输入指令 Num=1 Num=2 Num=3 Num=4 Cdir? Ccopy? Cerase? Cdis? Num=5 Cclr? Cmv? Num=6 Num=7 Cuname? Cend?Num=8 Case? 传入两个参数来复制文件 删除一个带绝对路径的指定 文件 回显输入的字 符串 清屏 移动或者重命 名文件显示计算机详 细信息 退出程序 调用Cmd 里的dir 查看目录 输入两个路径 输入一个绝对路径和文件名 不带空格的字符串 程序结束 是 否 否 否 否 否 否 否 否 是 是 是 是 是 是 是 4 1 23 8 7 输入带路径的两个文件名,路径相同为重命名

命令解释程序

命令解释程序 命令解释程序的作用 命令解释程序的组成 常驻部分 这部分包括一些中断服务子程序。例如,正常退出中断INT 20,它用于在用户程序执行完毕后,退回操作系统;驻留退出中断INT 27,用这种方式,退出程序可驻留在内存中;还有用于处理和显示标准错误信息的INT 24等。常驻部分还包括这样的程序:当用户程序终止后,它检查暂存部分是否已被用户程序覆盖,若已被覆盖,便重新将暂存部分调入内存。 初始化部分 它跟随在常驻内存部分之后,在启动时获得控制权。这部分还包括对AUTOEXEC.BAT 文件的处理程序,并决定应用程序装入的基地址。每当系统接电或重新启动后,由处理程序找到并执行AUTOEXEC.BAT文件。由于该文件在用完后不再被需要,因而它将被第一个由https://www.wendangku.net/doc/841434197.html,装入的文件所覆盖。 暂存部分 这部分主要是命令解释程序,并包含了所有的内部命令处理程序、批文件处理程序,以及装入和执行外部命令的程序。它们都驻留在内存中,但用户程序可以使用并覆盖这部分内存,在用户程序结束时,常驻程序又会将它们重新从磁盘。 命令解释程序的工作流程 系统在接通电源或复位后,初始化部分获得控制权,对整个系统完成初始化工作,并自动执行AUTOEXEC.BAT文件,之后便把控制权交给暂存部分。暂存部分首先读入键盘缓冲区中的命令,判别其文件名、扩展名及驱动器名是否正确。若发现有错,在给出出错信息后返回;若无错,再识别该命令。一种简单的识别命令的方法是基于一张表格,其中的每一表

目都是由命令名及其处理程序的入口地址两项所组成。如果暂存部分在该表中能找到键入的命令,且是内部命令,便可以直接从对应表项中获得该命令处理程序的入口地址,然后把控制权交给该处理程序去执行该命令。 https://www.wendangku.net/doc/841434197.html, 的工作流程

操作系统第三版实验指导

实验一命令解释程序 1.1 实验目的 ?掌握命令解释程序的设计方法。 ?学习Windows系统调用的使用,了解目录操作、进程控制等相关知识。 ?理解并发程序中的同步问题。 ?培养C/C++语言程序设计技能,提高程序设计和文档编写能力。 ?锻炼团队成员的交流与合作能力。 1.2 实验要求 1.2.1基本要求 本实验要求实现一个简单的命令解释程序,其设计类似于MS-DOS的Command程序,程序应当具有如下一些重要特征: ?能够执行cd、dir、tasklist、taskkill、history、exit等内部命令。 ?能够创建前台进程和后台进程。 此外,还应做到: ?使用VC建立工程。 ?提供清晰、详细的设计文档和解决方案。 本实验的具体要求如下: (1)参考Command命令解释程序,采用控制台命令行输入,命令提示行是当前目录与提示符“>”,在提示符后输入命令,执行结果在控制台中显示,如图1-1所示。 (2)实现以下内部命令。 ?cd <路径> 切换目录。 ?dir 显示指定目录下的文件、目录及磁盘空间等相关信息。 ?tasklist 显示系统当前进程信息,包括进程标识符pid、线程数、进程名等。 ?taskkill 结束系统中正在运行的进程,须提供进程标识pid。

?history 显示控制台中曾经输入过的命令。 ?exit 退出控制台。 (3)对前台进程和后台进程的操作。 本实验设计的命令解释程序可以将进程放在前台执行或者后台执行。 图1-1 命令解释器界面 启动前台进程,即在提示符下输入: fp <可执行文件> 启动后台进程的命令格式为: bg <可执行文件> 解释程序在前台进程运行期间需要一直等待,直到前台进程运行结束才打印命令提示符,而在后台进程运行期间不必等待,会立刻打印出命令提示符,允许用户输入下一条命令。命令解释程序中还需要捕获Ctrl+C组合键的信号来结束前台正在运行的进程,并返回用户输入界面,等待新命令输入。 (4)其他要求。 该命令解释程序应该具有相应的出错提示功能。程序每次接收用户输入的一行命令,在用户按下回车键(Enter)后开始执行命令。空命令只打印一个新的提示行,不做其他处理。定义空格为分隔符,程序应能处理命令行中出现的重复空格符。提供帮助命令help,供使用者查询每个命令的用法。

常用网络命令实验报告

实验Windows下常用网络配置命令实验报告 一、实验目的 1.了解windows xp\2000\2003系统下常用的网络配置命令,并通过相关命令获得实验机的相关网络环境数据。通过对实验数据的分析总结出利用相关网络命令进行简单的网络故障诊断。 2.学会去网上查找相关命令的用法以及命令在使用过程中遇到的问题。 二、实验环境 预装Windows xp\2000\2003等操作系统主机若干台,并已接入互联网。三、实验过程 (一)Ping命令的使用 点击开始→运行,在“运行”对话框键入cmd,按确定,到命令行方式下。 1.回环测试。这个ping命令被送到本地计算机IP软件。这一命令可以用来检测TCP/IP的安装或运行存在的某些最基本的问题。 C:\>ping 127.0.0.1

2.Ping本机IP。若无回复,说明本地计算机的TCP/IP安装或配置存在问题。 C:\>ping –t 192.168.2.37 在命令中加入参数-t,本地计算机应该始终对该ping命令做出应答,使用ctrl+C 终止操作。 3.Localhost是127.0.0.1的别名,我们也可以利用localhost来进行回环测试,每台计算机都能够将名称localhost转换成地址127.0.0.1。如果做不到这一点,则表示主机文件(host)中存在问题。 C:\>ping localhost 小结:

利用PING命令解决网络连通性故障。 首先PING “127.0. 0.1”命令,检查本机的TCP/IP 协议安装是否正确。 然后PING 本机IP地址,检查本机的服务和网络适配器的绑定是否正确。 接下来PING 网关IP 地址,检查本机和网关的链接是否正常。 最后PING 远程主机IP 地址,检查网关能否将数据包转发出去。 (二)Ipconfig命令的使用 1.如果需要显示所有适配器的基本TCP/IP配置,可以使用不带参数的ipconfig 命令。 C:\>ipconfig 2.如果需要显示所有适配器的完整TCP/IP配置,可以在ipconfig命令中使用参数/all。 C:\>ipconfig /all

c语言模拟shell命令行解释程序

北京联合大学 《操作系统课程设计》实验一:命令行解释程序 学院:信息学院专业:计算机科学与技术 课程:操作系统班级: 1 1 0 3 B 姓名:傅笔贵学号: 2009080305302 2014年7 月10 日

一.采用的数据结构说明 字符数组: 本程序中包含的字符数组有: filename1[20]:在Ccopy()函数中,存储源文件路径和名字的字符数组。 filename2[20]:在Ccopy()函数中,存储目标文件路径和名字的字符数组。 oldname[20]:在Cmv()函数中用来保存源文件路径和名字的字符数组。 newname[20]:在Cmv()函数中用来保存目标文件路径和名字的字符数组。 Cho2[6]:存取用户输入的指令,并用来作为Switch分支的判定条件之一。 File[20]:Cerase()函数中用来存放要删除的文件的路径和名字的字符数组。 Word[100]:在Cdis()中存放用户要回显的字符串。 二.源程序清单、注释和流程图 (1)流程图

(2)源程序和注释 #include #include #include #include #include #include #include int flag=1; char ch[8];//存储文件读取内容的中间变量 FILE *fp; FILE *fp1; char filename1[20];/*复制文件候存放的原文件名*/ char filename2[20];/*复制文件候存放的目标文件名*/ char oldname[20];/*用来存放移动文件的源文件名*/ char newname[20];/*用来存放移动文件的目标文件名*/ void start_copy(char *filename1,char *filename2) /*文件复制函数,可以实现文本和图片的复制*/ { if((fp=fopen(filename1,"rb"))==NULL||(fp1=fopen(filename2,"wb"))==NUL L) /*源文件或目标文件打开失败则无法进行复制*/ { printf("can't open the source file!\n"); exit(0); } else { fread(ch,1,8,fp);//一次读取八个字节的字节流,存放到ch字符数组里 while (!feof(fp))//没读取到文件尾部时,持续读取 { fwrite(ch,1,8,fp1);//写到目标文件里 fread(ch,1,8,fp);//继续读取 } fclose(fp);//关闭指针,释放内存 fclose(fp1); } }

Cad常用命令及使用方法

Cad常用命令及使用方法 一、绘图命令 直线:L 用法:输入命令L/回车/鼠标指定第一点/输入数值(也就是指定第二点)/回车(这时直线就画出来了)/回车(结束命令) 射线:RAY 用法:输入命令RAY/回车/鼠标指定射线起点/指定通过点/回车(结束命令) 构造线:XL 用法:输入命令XL/回车/鼠标指定构造线起点/指定通过点/回车(结束命令) 多段线:PL 用法1:同直线命令 用法2:输入命令PL/回车/指定起点/输入W(绘制带有宽度的线)/回车/指定线起点宽度/回车/指定线结束点宽度/回车/输入数值(线的长度值)/回车(结束命令) 正多边形:POL 用法:输入命令POL/回车/指定边数/回车/鼠标指定正多边形的中心点/输入选项(C外切于圆;I内接于圆)/回车/输入半径/回车(结束命令) 矩形:REC 用法1:输入命令REC/回车/鼠标指定第一角点/指定第二角点 用法2:输入命令REC/回车/输入C(绘制带有倒角的矩形)/回车/输入第一倒角值/回车/输入第二倒角值/回车/鼠标指定第一角点/指定第二角点 用法3:输入命令REC/回车/输入F(绘制带有圆角的矩形)/回车/输入圆角半径/回车/指定第一角点/指定第二角点 圆弧:A 用法:输入命令A/回车/指定圆弧起点/指定圆弧中点/指定圆弧结束点 (绘制圆弧的方法有11种,可参考绘图菜单---圆弧选项) 圆:C 用法:输入命令C/回车/鼠标指定圆心/输入半径值/回车(命令结束) (绘制圆的方法有6种,可参考绘图菜单---圆选项) 样条曲线:SPL 用法:输入命令SPL/回车/鼠标指定要绘制的范围即可/需要三下回车结束命令 椭圆:EL

网络工程实验报告 ()

实验五配置实现N A T/P A T 一、实验目的 1.熟练掌握地址转换的3种实现技术,特别掌握动态NAT及PAT的配置方法; 2.掌握使用show ip nat translation 和debug ip nat 等命令对路由器地址转换 表内容的各种查看和跟踪方法; 3.能按要求利用Cisco Packet Tracer V5.00模拟配置工具工具绘制出本实验的网 络拓扑图,并能实现拓扑的物理连接; 4.熟悉配置NAT的3种方法及其基本操作步骤:掌握在存根网络中配置实现PAT的 方法。 二、实验环境/实验拓扑 1.每人一台安装并配置有Cisco Packet Tracer V5.00模拟配置工具的PC机。 2.拓扑图 三、实验内容 1. 利用Cisco Packet Trancer V5.00 模拟配置工具绘制出本实验的网络拓扑图; 2总结3种实现技术,掌握Cisco Packet Trancer V5.00动态NAT/PAT的配置方法; 3使用show ip nat translation 和debug ip nat 等命令对路由器地址转换表内容的各种查看方法和跟踪方法; 4.在路由器上利用show ipinterface brief命令查看各个端口的信息: 5.利用ping,traceroute,telnet,debug等相关命令,进行网络连通性检查和配置结果测试。 四、实验步骤: Step1:选择添加3个2620XM路由器设备至逻辑工作空间; (提示:2620XM路由器需要断电后接插WIC-2T模块才有广域网互联用的高速同步串口)Step2:将Router0路由器的主机名命名为London;将Router1路由器的主机名命名为Florence;将Router2路由器的主机名命名为Denver; Step3:配置Florence的enable口令及VTY线路密码; (提示:将enable password设为shzu、将enable secret设为cisco、将VTY线路密码设为cisco) Step4:查看当前Florence路由器的配置文件内容(内存信息)并记录下来。 (提示:用show run命令,注意区分各种密码) Step5:用正确的连接线缆将London的Serial0/1端口连接到Florence的Serial0/0端口; (提示:注意DCE/DTE端的划分:本题设定London路由器不提供时钟速率,即:时钟频率在Florence的Serial0/0端口上配) Step6:用正确的连接线缆将Florence的Serial0/1端口连接到Denver的Serial0/0端口; (提示:注意DCE/DTE端的划分:本题设定Florence路由器提供时钟速率,即:时钟频率在Florence的Serial0/1端口上配) Step7:分别查看当前London、Florence、Denver路由器的路由表状态并记录下来。 (提示:注意路由表项类型字符、管理距离/度量值) Step8:配置London的Serial0/1端口;(IP地址、子网掩码、封装WAN协议帧格式、激活端口)

操作系统实验5-命令行接口实验

实验五 命令行接口实验 一:实验目的 了解命令行接口的使用 二:实验内容 用C语言编写一个模拟的命令解释程序。要求自己设计一个OS命令接口,包含若干条命令,然后编写一个命令解释程序,要求对用户输入的字符串进行分析 ,命令得出结果输出到文本文件。 譬如输入dir ,显示出当前目录下所有的目录和文件。 提示调用system()函数,来实现命令解释。 三:实验类别 命令行接口实验 四:实验类型 模拟实验 五:主要仪器 计算机 六:结果与问题总结 1.对老师的题目要求理解有点模糊,编写的程序比较简单,不知道写得对不对........ 2.对字符与字符串的使用有点混淆 运行结果 查找成功的: 查找不成功的:

七:程序 #include #include #include void system(char n[10])//查找函数 { if(strcmp(n,"login")==0||strcmp(n,"passward")==0||strcmp(n,"format")==0 ||strcmp(n,"diskcopy")==0||strcmp(n,"diskcomp")==0||strcmp(n,"backup")==0||strcmp(n ,"restore")==0 ||strcmp(n,"type")==0||strcmp(n,"copy")==0||strcmp(n,"comp")==0||strcmp(n,"rename") ==0||strcmp(n,"erase")==0 ||strcmp(n,"mkdir")==0||strcmp(n,"dir")==0||strcmp(n,"rmdir")==0||strcmp(n,"tree")==0| |strcmp(n,"chdir")==0) { printf("在本系统中可以查找到您所输入的命令!!\n");//可以查找到 printf("您所输入命令的意思是:\n");//输出命令的含义 if(strcmp(n,"login")==0) { printf("用户键入自己的注册名\n"); } else if(strcmp(n,"passward")==0) { printf("用户键入自己的口令\n");

CISCO 常用命令解释

视图模式介绍: 普通视图 router> 特权视图 router# /在普通模式下输入enable 全局视图 router(config)# /在特权模式下输入config t 接口视图 router(config-if)# /在全局模式下输入int 接口名称例如int s0或int e0 路由协议视图 router(config-route)# /在全局模式下输入router 动态路由协议名称 1、基本配置: router>enable /进入特权模式 router#conf t /进入全局配置模式 router(config)# hostname xxx /设置设备名称就好像给我们的计算机起个名字 router(config)#enable password /设置特权口令 router(config)#no ip domain lookup /不允许路由器缺省使用DNS解析命令 router(config)# Service password-encrypt /对所有在路由器上输入的口令进行暗文加密router(config)#line vty 0 4 /进入设置telnet服务模式 router(config-line)#password xxx /设置telnet的密码 router(config-line)#login /使能可以登陆 router(config)#line con 0 /进入控制口的服务模式 router(config-line)#password xxx /要设置console的密码 router(config-line)#login /使能可以登陆 2、接口配置: router(config)#int s0 /进入接口配置模式 serial 0 端口配置(如果是模块化的路由器前面加上槽位编号,例如serial0/0 代表这个路由器的0槽位上的第一个接口) router(config-if)#ip add xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx /添加ip 地址和掩码router(config-if)#enca hdlc/ppp 捆绑链路协议 hdlc 或者 ppp 思科缺省串口封装的链路层协议是HDLC所以在show run配置的时候接口上的配置没有,如果要封装为别的链路层协议例如PPP/FR/X25就是看到接口下的enca ppp或者enca fr router(config)#int loopback /建立环回口(逻辑接口)模拟不同的本机网段 router(config-if)#ip add xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx /添加ip 地址和掩码给环回口 在物理接口上配置了ip地址后用no shut启用这个物理接口反之可以用shutdown管理性的关闭接口 3、路由配置: (1)静态路由 router(config)#ip route xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 下一条或自己的接口router(config)#ip route 0.0.0.0 0.0.0.0 s 0 添加缺省路由 (2)动态路由 rip协议 router(config)#router rip /启动rip协议 router(config-router)#network xxx.xxx.xxx.xxx /宣告自己的网段 router(config-router)#version 2 转换为rip 2版本 router(config-router)#no auto-summary /关闭自动汇总功能,rip V2才有作用 router(config-router)# passive-int 接口名 /启动本路由器的那个接口为被动接口

网络常用命令实验报告

成都师范学院物理与工程技术学院 课程名称:计算机网络技术 实验项目名称:网络常用命令的使用 姓名: 专业班级:学号: 实验地点:实验日期: 同组学生姓名:指导老师: 学生实(试)验实训报告 (一)实(试)验目的与要求 1、熟悉常用网络测试命令的语法功能; 2、学会利用网络命令分析并排除常用网络故障的方法。 (二)实(试)验设备与器件 装有Windows XP操作系统的计算机网线 (三)实(试)验原理与内容 原理:DOS的任何一个命令实际上都是代表一段程序,它是操作系统为用户实现某种功能提供的手段。DOS命令很多,通常分为三种类型:内部命令、外部命令和批命令。DOS命令通常由三部分构成,基本格式: 1.【路径名】命令名【路径名】文件名【参数】(注:方括号,为可选项) 2.第二部分是针对于DOS命令的操作对象而言的,路径名指的是被操作对 象“文件名”所在的地址。 3.第三部分中,参数的内容、数量以及类型命令功能决定。 4.内容:1.练习用以下常用命令: (1)查看目录内容命令:DIR (2)改变当前盘符命令:CD (3)格式化命令: format(此命令不能用于硬盘) (4)清除屏幕命令: CLS。 2.所有命令带不同参数,应得到不同结果,请记录以下参数的显 示结果: (1)当ipconfig不带任何参数选项时显示的结果 (2)当带参数all选项显示的结果 3.用ping命令测试网络连通状态,并记录结果: (1)PING 127.0.0.1 (2)PING 本台计算机的IP 地址 (3)PING 与本台计算机连在同一台交换机上的其计算机 (4)PING DNS (5)PING 网关 (6)ping百度网站域名地址 (7)使用参数-a

命令行简介

一.命令行简介 命令行就是在Windows操作系统中打开DOS窗口,以字符串的形式执行Windows管理程序。 在这里,先解释什么是DOS? DOS——Disk Operation System 磁盘操作系统 目前我们常用的操作系统有windows 9x/Me,NT,2000等,都是可视化的界面。在这些系统之前的人们使用的操作系统是DOS系统。DOS系统目前已经没有什么人使用了,但是dos命令却依然存在于我们使用的windows系统之中。大部分的DOS命令都已经在Windows里变成了可视化的界面,但是有一些高级的DOS命令还是要在DOS环境下来执行。所以学习命令行对于我们熟练操作Windows系统是很有必要的。 不同的操作系统要用不同的命令进入命令行界面。 在Win9x/Me的开始菜单中的运行程序中键入"command"命令,可进入命令行界面。 在Win2000/NT的开始菜单中的运行程序中键入"cmd"命令,可进入命令行界面。 下面我用讲到的DOS命令都可以在Windows Me操作系统中执行。 那么,我们如何进入命令行窗口? 开始——〉运行——〉键入command命令——〉回车 进入了命令行操作界面(DOS窗口),在DOS窗口中只能用键盘来操作。如下所示: 二.符号约定 为了便于说明格式,这里我们使用了一些符号约定,它们是通用的: C: 盘符

Path 路径 Filename 文件名 .ext 扩展名 Filespec 文件标识符 [ ] 方括号中的项目是可选项,用户可以根根据需要不输入这些内容 { } 大括号表示其中的项目必选一项 | 竖线表示两侧的内容可取其一 … 表示可重复项 三.命令行的输入方法 在DOS窗口中通过输入英文命令加回车键这种方式来执行程序。 四.内部命令和外部命令 命令行程序分为内部命令和外部命令,内部命令是随https://www.wendangku.net/doc/841434197.html,装入内存的,而外部命令是一条一条单独的可执行文件。 内部命令都集中在根目录下的https://www.wendangku.net/doc/841434197.html,文件里,电脑每次启动时都会将这个文件读入内存,也就是说在电脑运行时,这些内部命令都驻留在内存中,用dir命令是看不到这些内部命令的。 外部命令都是以一个个独立的文件存放在磁盘上的,它们都是以com和exe为后缀的文件,它们并不常驻内存,只有在电脑需要时,才会被调入内存。 五.常用命令 DOS命令总共大约有一百个(包括文本编辑、查杀病毒、配置文件、批处理等),我们这里详细介绍二十个常用的DOS命令。 先介绍一下通配符的概念。

相关文档