实验一  命令解释程序的编写(两周内)

一、目的和要求

1. 实验目的

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

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

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

2.实验要求

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

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

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

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

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

(5)用户输入QUIT退出

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

二、实验内容

根据教师指定的实验课题,完成设计、编码、测试工作。

、实验环境

1.PC微机

2.Windows 操作系统

3.C/C++程序开发集成环境

 #include<stdio.h>
char cmd[][]={"dir","cd","md","rd","cls","date","time","ren","cope","help","quit"};
char str[];
int i;
main()
{
printf("Microsoft Windows [版本 6.1.7601]\n");
printf("版权所有 <c> 2009 Microsoft Corporation。保留所有权利\n\n");
while(){
printf("C:\Users\Administrator>");
gets(str);
for(i=;i<;i++)
{
if(strcmp(str,cmd[])==)
{
printf("'dir'内部命令输入正确!\n");
printf("该命令作用是:显示一个目录中的文件和子目录。\n\n\n");
break;
}
if(strcmp(str,cmd[])==)
{
printf("'cd'内部命令输入正确!\n");
printf("该命令作用是:显示当前目录的名称或将其更改。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'md'内部命令输入正确!\n");
printf("该命令作用是:创建一个目录。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'rd'内部命令输入正确!\n");
printf("该命令作用是:删除目录。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'cls'内部命令输入正确!\n");
printf("该命令作用是:清除屏幕。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'date'内部命令输入正确!\n");
printf("该命令作用是:显示或设置日期。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'time'内部命令输入正确!\n");
printf("该命令作用是:内部命令显示或设置系统时间。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'ren'内部命令输入正确!\n");
printf("该命令作用是:重新命名文件。\n\n\n"); break;
}
if(strcmp(str,cmd[])==)
{
printf("'cope'内部命令输入正确!\n");
printf("该命令作用是:将至少一个文件复制到另一个位置。\n\n\n");
return ;
break;
}
if(strcmp(str,cmd[])==)
{
printf("类型:外部命令\n");
printf("有关某个命令的详细信息,请键入 HELP 命令名\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\n\n");
break;
}
if(strcmp(str,cmd[])==)
{
printf("'quit'外部命令输入正确!\n");
printf("该命令作用是:退出命令解释程序。\n\n\n");
exit();
break;
}
if(strcmp(str,cmd[i])!=)
{
printf("此命令不是内部或外部命令,也不是可运行的程序或批处理文件。\n\n\n");
break;
}
}
}
}

操作系统cmd的更多相关文章

  1. 操作系统cmd算法

    实验一  命令解释程序的编写(两周内) 一.目的和要求 1. 实验目的 (1)掌握命令解释程序的原理: (2)*掌握简单的DOS调用方法: (3)掌握C语言编程初步. 2.实验要求 编写类似于DOS, ...

  2. 磁盘操作系统 cmd命令

    DOS CMD :磁盘操作系统 不区分大小写 **cd \ 根目录 cls 清空屏幕 dir 显示目录 d: 进入D盘 cd 进入目录命令 dir 查看当前目录的文件与目录 del 删除文件 del ...

  3. Grails笔记一:windows8.1操作系统cmd下grails命令无效

    最近决定使用intellij idea工具来开发基于Grails框架的应用程序,,在安装好jdk 1.7以及配置好jdk和grails环境变量后进行grails测试,在win8.1的命令行窗口中输入以 ...

  4. 0324操作系统cmd功能的扩展

    需求:1.实现清屏功能 2.实现不区分大小写功能 3.添加功能能添加新的命令符 设计:1.使用system("cls")清屏. 2.使用strlwr()函数把大写都变成小写 3.( ...

  5. 操作系统 cmd mini OS

    #include <stdio.h>#include <stdlib.h>#include <string.h> void word(char *a){ if(st ...

  6. 设计模式(六):控制台中的“命令模式”(Command Pattern)

    今天的博客中就来系统的整理一下“命令模式”.说到命令模式,我就想起了控制台(Console)中的命令.无论是Windows操作系统(cmd.exe)还是Linux操作系统(命令行式shell(Comm ...

  7. (转)使用SQLCMD在SQLServer执行多个脚本

    概述: 作为DBA,经常要用开发人员提供的SQL脚本来更新正式数据库,但是一个比较合理的开发流程,当提交脚本给DBA执行的时候,可能已经有几百个sql文件,并且有执行顺序,如我现在工作的公司,十几个客 ...

  8. 使用SQLCMD在SQLServer执行多个脚本

    原文:使用SQLCMD在SQLServer执行多个脚本 概述: 作为DBA,经常要用开发人员提供的SQL脚本来更新正式数据库,但是一个比较合理的开发流程,当提交脚本给DBA执行的时候,可能已经有几百个 ...

  9. 使用SQLCMD在SQLServer执行多个脚本 转载

    出处不明 概述: 作为DBA,经常要用开发人员提供的SQL脚本来更新正式数据库,但是一个比较合理的开发流程,当提交脚本给DBA执行的时候,可能已经有几百个sql文件,并且有执行顺序,如我现在工作的公司 ...

随机推荐

  1. 基于opencv和qt的人脸检测小系统

    摘要:利用opencv读取视频.图片并检测人脸,利用QT显示窗口,功能选择等 环境:Ubuntu18.04.OpenCV3.4.0.QT5.10.1 效果图: 代码如下(比较简单没什么注释): mai ...

  2. STM32(6)——USART串口的使用

    1. 串口的基本概念 在STM32的参考手册中,串口被描述成通用同步异步收发器(USART),它提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换.USART利用 ...

  3. 记账APP(4)

    依旧是一个表格类型的增删改查,但是呢,在用节点做,有点懵,明天加油

  4. 20155315 2016-2017-2 《Java程序设计》第十周学习总结

    学习目标 了解计算机网络基础 掌握Java Socket编程 理解混合密码系统 掌握Java 密码技术相关API的使用 学习资源 Java和Android开发学习指南(第二版)(EPUBIT,,Jav ...

  5. 你真的认为iphone只是一部手机么

    闲言不表,直奔主题.我是一个程序员,上周参加了一个开源软件交流大会,其实会上并没有听到什么新鲜的东西.但是在会中,偶然间听到了一个关于iphone的秘密,却着实令我震惊了,事情具体是这样的,听我慢慢道 ...

  6. 【转载】GitHub详解

    原文:GitHub详解 GitHub详解 GitHub 是一个共享虚拟主机服务,用于存放使用Git版本控制的软件代码和内容项目.它由GitHub公司(曾称Logical Awesome)的开发者Chr ...

  7. 解析hdr图像文件的python实现

    如题 import cv2 import numpy as np def rgbe2float(rgbe): res = np.zeros((rgbe.shape[0],rgbe.shape[1],3 ...

  8. AngularJS中Directive指令系列

    近段时间在研究Angular中的directive用法,打算写个系列.以官方文档为主.并参考诸多教程.加上自己的思考. 基本概念及用法 scope属性的使用.  &, <, =, @ 符 ...

  9. Drupal7 配置多站点及为每个站点设置语言

    默认情况 在Drupal7的安装目录下存在sites目录 sites目录结构如下: --all --default --example.sites.php --README.txt 1. 添加新域名, ...

  10. JS基础,相亲,逻辑训练

    简单逻辑 <script> var a = prompt("有房么?"); // if(a == "有") { alert("结婚吧&qu ...