红联Linux门户
Linux帮助

Shell脚本的开头问题

发布时间:2010-01-11 12:22:29来源:红联作者:wewe-b
[i=s] 本帖最后由 wewe-b 于 2010-1-12 19:08 编辑 [/i]

大家好,我是个linux新手。
我在 shell 脚本(名为test)的开头加入了一行:
#!/bin/sh

并给脚本加入了执行权限。 chmod 711 test
但是直接运行 test 总是提示: command not find
要用 sh test 才能运行脚本,请问是什么原因?
文章评论

共有 7 条评论

  1. wewe-b 于 2010-01-12 19:06:12发表:

    [i=s] 本帖最后由 wewe-b 于 2010-1-12 19:07 编辑 [/i]

    非常感谢楼上诸位的热心指点。
    在当前目录执行要加 ./ 路径符
    不带路径输入要将脚本放在 $PATH 变量里的目录中。
    明白了。谢谢 ^_^

  2. hongyu315 于 2010-01-11 16:45:32发表:

    支持一楼

  3. two__fishes 于 2010-01-11 15:29:16发表:

    解决方法很多,总之概念要搞清楚!

  4. baomam3 于 2010-01-11 15:20:33发表:

    开头写 #/bin/sh - //注意,这里后面有一条杠
    或者#/bin/bash

  5. zhaoyuzhong3694 于 2010-01-11 15:13:27发表:

    [i=s] 本帖最后由 zhaoyuzhong3694 于 2010-1-11 15:16 编辑 [/i]

    2# deepwhite

    一楼正解。
    你要想让它在shell中直接输入,不带./要把它放到我列出的几个目录当中,并且不能叫test,因为/usr/bin/下有叫这个名字的命令。

  6. zhaoyuzhong3694 于 2010-01-11 15:12:35发表:

    把开头改成
    #!.bin/bash
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:

    或者改成
    #!/usr/bin/env bash

  7. deepwhite 于 2010-01-11 15:07:59发表:

    应该输入
    ./test
    不是 test