关于一个SHELL脚本的问题?

santld 2002-02-19 05:06:34
不知道为什么,我进行shell编程的时候,到判断语句的时候,总是无法正确执行
代码如下:

#!/bin/sh

echo -e "Please enter file name: "
read file

if [ -f $file ]
then
echo Find the file $file
else
echo Don't find the file $file
fi


当执行到 [ -f $file ] 就会出现错误,我用的是 red hat linux 7.1,shell:/bin/bash

...全文
38 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
water_crusoe 2002-04-16
  • 打赏
  • 举报
回复
方括号后还要个分号,if [……];then
santld 2002-02-21
  • 打赏
  • 举报
回复
太夸张了吧,机子对我不公平
linuxnewer 2002-02-20
  • 打赏
  • 举报
回复
-f 判断文件是否存在
判断条件和方括号之间应该有空格:
[空格-f $file空格]
再试试。
guduker 2002-02-20
  • 打赏
  • 举报
回复
后面两个ECHO命令后的参数应该用双引号括住
另外[ -f $file ] 中的-f表示什么意思???
判断表达式的真假好象不是这个参数
linuxnewer 2002-02-20
  • 打赏
  • 举报
回复
呵呵,好玩。
我这里不加"也一样正常运行。
santld 2002-02-20
  • 打赏
  • 举报
回复
加上"可以执行了,但是又多出来了一个command not found
不知为什么?
victts 2002-02-20
  • 打赏
  • 举报
回复
echo "Don't find the file $file"
linuxnewer 2002-02-20
  • 打赏
  • 举报
回复
呵呵,提示的错误是什么?
btw:我这里用你那段shell程序没有报错。
santld 2002-02-20
  • 打赏
  • 举报
回复
谢谢各位兄弟,我在中间加空格了,但是不行

19,620

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧