首 页 ┆ 源码下载 ┆ IT学院 ┆ 字体下载 ┆ 模板下载 ┆ 源码发布 ┆ 广告合作 ┆ 网站地图 ┆ 虚拟主机 ┆ 中文域名
► 设为首页
► 加入收藏
► 联系我们
源码下载 >> ASP源码 | PHP源码 | ASP.net源码 | JSP源码 | CGI源码 | VC/C++源码 | VB源码 | Delphi源码 | Flash源码
文章学院 >> 网络编程 | 网页设计 | 图形图象 | 数据库 | 服务器 | 网络媒体 | 网络安全 | 操作系统 | 办公软件 | 软件开发 | 黑客知识
字体下载 >> 精制字体 | 非英字体 | 艺术字体 | 著名字体 | 哥特式 | 简单字体 | 手写体 | 节假日 | 图案字体 | 精度像素 | 中文字体
模板下载 >> 企业门户 | 数码网络 | 休闲娱乐 | 影视音乐 | 旅游名胜 | 文化艺术 | 电子商务 | 个性展示 | 登陆导航 | Flash模板
►►您当前的位置:源码园 → IT学院 → 操作系统 → Win98/Dos → 文章内容

如何在Linux环境模拟DOS命令

作者:佚名  来源:网上收集  发布时间:2005-12-8 1:57:38
    你可以利用Linux固有的command shell的灵活性,创建脚本语言,帮助你在Linux环境中模拟DOS命令。具体做法如下。   

  如果你是一位IT支持专家,你对于Windows的命令操作非常喜欢,在你第一次使用Linux的命令行的时候,你可能很快就会发现自己被搞糊涂了。长期以来你所熟悉的
DOS命令在Linux中不存在了。所以你会发现,自己面临着一项可怕的任务:重新学习并熟悉一整套新的命令。   

  作为另一个选择,你可以利用Linux command shell固有的灵活性,创建脚本,帮助你在Linux环境中模拟
DOS命令。具体做法如下。   

  shell scripting的基础  

  Linux的shell scripting 是一种自动完成多种类型任务的方法,从夜间备份到简单的命令行应用。几乎任何程序都可以通过shell script完成。你甚至可以在脚本内部完成简单的条件检查。shell script的基本格式如下: 

  #!/bin/sh

  ...

  这里是你的命令

  ...  

  注意文件是以#!/bin/sh开始的。这把操作系统指向解释脚本的程序。绝大部分系统有/bing/sh,因为这是根用户使用的标准shell。你可以在绝大部分系统中使用/bing/bash。  

  重要的是了解每个shell之间的脚本差别。一些壳,比如bash,比标准shell支持更多的命令。对于绝大部分Linux版本,sh事实上是bash。  

  从一个脚本运行命令非常简单。就好象在Windows系统中运行
DOS。比如,你可以这样复制文件: 

  #!/bin/sh

  cp file1 file2

  mv file2 file3

  echo "complete" > complete.txt  

  能够不需要交互就完成一个命令对于自动运行的任务来说非常有用,但是对于用户来说却不是那么有帮助了。 shell 还为向一个运行中的脚本输入数据提供了途径。这就允许脚本从用户那里获得数据输入,然后在程序运行中运用这些数据。命令行中的argument指的是$1到$9。如果你曾经在
DOS中创建过批处理文件,你就可能对于使用类似的%1、%2处理同样的事情。下面是一个使用命令行argument的例子:  

  #!/bin/sh

  cp $1 $2 

  上面的脚本采用了两个命令行argument,并把其中一个作为拷贝的来源,而第二个作为拷贝的目的地。在运行上面这个脚本的时候,你需要输入诸如./myscript file1 file2,这里的myscript指的是上面脚本的名称。命令行选项也可以通过这种方法传递,比如:

  #!/bin/sh

  cp $1 $2 $3  

  为了递归地把$2目录下所有的文件拷贝到$3,你可以使用上面的脚本:/copy sourcedir destdir。选项$1加上-r能够告诉系统进行递归式的文件拷贝。  

  带条件的Shell scripting   

  简单的Shell scripting对于处理直截了当、没有变数的任务非常合适。而对于那些需要一定程度决策的工作来说,if/then条件假设就成为必须的了。Shell scripting支持很多选项,从比较符操作到检索文件的存在。基本的if条件判断选项包括:  

  -eq 检查某两个值是否相等(例如,if [2 eq 5])  

  -ne 检查两个值是否不相等  

  -lt 检查值1是否小于值2  

  -le 检查值1是否小于等于值2  

  -gt 检查值1是否大于值2  

  -ge 检查值1是否大于等于值2  

  -f 检查某一个文件是否存在(例如,[-f "文件名"])  

  -d 检查某一个目录是否存在  

  几乎所有主要的程序都可以使用比较操作。最经常使用的是-f,我们用它在使用某一个文件之前,先行检查它的存在。  

  创建简单脚本模拟Windows命令  

  现在,你了解了基础,你可以创建脚本命令,这样Windows用户就可以在Linux系统内使用同样的命令。为你常用的
DOS命令创建模拟映射是非常简单的事情。例如,把Linux cp命令映射为Windows copy命令就是这样进行的:  

  #!/bin/sh

  if [ -f "/usr/bin/mcopy" ]

  then

  mcopy $1 $2

  else

  cp $1 $2

  fi  

  该脚本利用了mcopy(如果它存在),因为该命令接受Windows路径,比如:a:\file.txt。这个命令在绝大部分主流Linux版本的mtool包中。一旦一个脚本被成功创建,记得要使用chmod +x YourScriptName命令使它成为可执行文件。
  

  有很多方法可以调试你的脚本,但是最简单的办法是在你的脚本中插入一个简单的echo语句。下面是一个例子:  

  #!/bin/sh

  echo "marker 1"

  if [ -f "/usr/bin/mcopy" ]

  then

  echo "marker 2"

  mcopy $1 $2

  else

  echo "marker 3"

  cp $1 $2

  fi

  echo "marker 4"  

  使用简单的陈述帮助你了解这个脚本,并帮助你跟踪它是在那里出问题的。 

  获得脚本

  有了这些基本的脚本知识,你就能够很容易地把绝大部分常用的Windows命令行转化成Linux可用的脚本。如果有某一个特定的命令行选项是你想进行映射的,查看Linux man pages,这能帮助你找到合适的方法。

[] [返回上一页] [打 印]
  • 上一篇文章:Win 2003配置邮件服务器
  • 下一篇文章:DOS下使用注册表完全手册

  • 相关文章:
  • [图文]如何在ListBox中选择背景位图
  • 强!用DOS命令查QQ好友IP地址
  • Windows XP 增强的DOS命令
  • DOS命令实现文件合并隐藏秘密
  • 用DOS命令查QQ好友IP地址
  • 用dos命令破解远程NT用户密码
  • Windows XP中的DOS命令详解
  • 高手起步系列之DOS命令
  • 老当益壮的dos命令--copy
  • DOS命令的深入挖掘
  • 最强之dos命令 - for
  • 必须掌握的八个DOS命令
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 源码发布
Copyright © 2003-2009 Ymyasp.Com. All Rights Reserved .
备案序号:粤ICP备07029071号