跟我学Bash(Bourne Again SHell) 一

2025-11-22 00:00:21

1、GNU的Bash是现在的主流,灵活性,table补全等等特点深受各界人士喜欢。

现在就开始写一个Hello World的bash脚本。

现在查看一下,我们的shell

跟我学Bash(Bourne Again SHell) 一

2、可以看到,我们用echo(回显)把$SHELL变量的内容打印的屏幕上(称之为STDOUT),我们看到了它的绝对路径,是/bin/bash

现在我们可以新建一个文件,touch 0.hello_world.sh

跟我学Bash(Bourne Again SHell) 一

3、用vim打开它,没有装vim的就输入vi。

跟我学Bash(Bourne Again SHell) 一

跟我学Bash(Bourne Again SHell) 一

4、按a切换到插入模式

跟我学Bash(Bourne Again SHell) 一

5、一个可执行脚本,最重要的是要知道脚本解释器的位置。

我们刚刚echo $SHELL已经得到了解释器的位置。

#!/bin/bash

请记住一个#是注释,#!是设置解释器路径

#!/xxx/perl

#!/xxx/python

上面2个例子一样是设置脚本解释器路径,有名的Perl和Python

但是请注意一点,#!必须在第一行,第一行不能写注释。

跟我学Bash(Bourne Again SHell) 一

6、然后你也可以写点注释

# xxxx

最后是完成我们要的效果,输出hello world到我们的显示器上

echo "hello world"

当然你也可以echo hello world

但是我不建议这样做,具体为什么,后面再介绍。

最后一步,exit 0

这一步是设置shell脚本的值,相当于c语言里main函数的返回值,当然你听不懂没关系,照着写就行了,这个具体在介绍函数的时候会具体说这一点。

跟我学Bash(Bourne Again SHell) 一

7、然后按下ESC键,输入:wq保存退出

单独保存是:w

跟我学Bash(Bourne Again SHell) 一

8、有没有发现一个问题?保存退出之后,输入./0然后按table键没反应。很显然,没有执行权限。

输入以下命令改变文件权限:chmod 700 0[然后按table]

跟我学Bash(Bourne Again SHell) 一

9、这时候再输入./0[table键补全]就出来了

这个.是当前路径,..是上一级目录,/是目录层次分隔符

然后,按下Enter运行它,快看,它跑起来了,输出了我们想要输出的内容

hello world

跟我学Bash(Bourne Again SHell) 一

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢