频道栏目
首页 > 资讯 > Linux > 正文

初识shell脚本

17-07-12        来源:[db:作者]  
收藏   我要投稿

按照国际惯例,首先用来输出一个 hello world

1 #!/bin/bash
2 #第一个shell脚本
3 echo hello world

我们把这个文件命名为 hello,当在命令行输入 hello 的时候

David~MackBook:shell_test$ hello 
-bash: hello: command not found

提示命令找不到,那么如何让系统找到 hello 脚本呢?

将shell脚本所处的目录添加到 PATH 环境变量中 在提示符中使用绝对或相对文件路径来引用shell脚本文件

对于第一种方法,最简单的方法就是在命令行输入

David~MackBook:shell_test $ PATH=$PATH:.
David~MackBook:shell_test $ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:.

冒号后面的点就是代表当前目录,这样,无论我们进入到哪个目录,系统都可以在当前目录下找到这个文件。

对于第二种方法,就更简单了,如果用相对路径的话就是 ./hello,如果用绝对路径的话就是 ~/shell_test/hello

假设现在用了第一种方法,当我们再在命令行输入 hello 的时候

David~MackBook:shell_test $ hello
-bash: ./hello: Permission denied

提示权限拒绝,因为文件创建时,属主是没有执行权限的(当然你也可以设置 umask 值,从而在创建的时候有执行权限),所以现在要加上属主的执行权限

chmod u+x hello
David~MackBook:shell_test $ ls -li hello 
5572257 -rwxr--r--  1 David  staff  51  7 11 23:35 hello

现在hello文件具有了执行权限,当我们再在命令行执行 hello 命令的时候,就可以正常输出

David~MackBook:shell_test $ hello 
hello world
相关TAG标签
上一篇:linux内核学习
下一篇:网站根目录权限设置
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站