+ -
当前位置:首页 → 问答吧 → 简单Shell脚本问题

简单Shell脚本问题

时间:2011-03-29

来源:互联网

fileName='myfile' 

if(-e "$fileName");then
echo File $fileName exists. 
cp $fileName $fileName.bak
else
echo File $fileName doesn\'t exist.
touch $fileName
fi

想用上面这段脚本判断myfile是否存在,可是老是报:
-e:找不到命令

这是怎么回事啊?

另外,有看到if后面多用[],可是我的环境(ubuntu)是用(). 哪些使用[]呢?

谢谢

作者: allenmchen   发布时间: 2011-03-29

csh使用(),bash使用[],但是上面的脚本应该不是csh的。 把if(-e "$fileName");该成if [ -e "$filename" ],并在首行加入:#!/bin/bash

作者: masmaster   发布时间: 2011-03-29