如何在Linux系统环境中模拟DOS命令(2)
文章作者 100test 发表时间 2007:03:14 16:29:57
来源 100Test.Com百考试题网
带条件的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命令使它成为可执行文件。