LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 770|回复: 5

shell程序的执行??

[复制链接]
发表于 2002-12-15 21:10:36 | 显示全部楼层 |阅读模式
我用gedit写了一个shell程序,并且命名为asd.sh
再用root给文件chmod +x asd.sh
运行./asd.sh

问题出来了,提示说是“不能够生成二进制的文件"?
请问这是什么原因,我是刚学shell.
 楼主| 发表于 2002-12-15 21:35:40 | 显示全部楼层
#!/bin/bash

if [ $# -ne 1 ]

then

   echo "usage: if test file to test"

   exit 1

fi

if test -f "$1"

then

cat $1

elif test -d "$1"

then

cd $1

cat *

else

echo "invalid filename1"

exit 2

fi





这是源程序,请各位帮忙看看!
发表于 2002-12-16 07:54:40 | 显示全部楼层
你的文件格式有误,bash shell的第一行开头必须是#!/bin/sh,前面不能有空白,#!也不能用全角字符,否则会被认为是文本文件而不能执行。
发表于 2002-12-16 11:59:17 | 显示全部楼层
你是不是用gedit来编辑的啊?gedit缺省会存成utf-8的,会被认为是binary,用vi就没事了。 kate,kwrite这些也可以的。
 楼主| 发表于 2002-12-16 14:39:15 | 显示全部楼层
谢谢,我在VI中编辑了之后能够行了!!
发表于 2002-12-17 11:14:43 | 显示全部楼层
呵呵,看来tram老乡也很有经验嘛。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表