shell脚本学习第一弹
作为一个linux程序员,不会shell的脚本的编写,可是不合格的呀!!!
今天,我们一起来看看shell脚本的编写:
别的先不说,先来一个入门级的案例:
1 #!/bin/bash
2 #当前路径
3 pwd
4 #打印hello
5 echo "hello"
我们执行
chmod +x hello.sh
./hello.sh
结果:
/home/shell
hello
能打印出这个,说明入门了。
我们来看看上面这个脚本,首先,我就有几个疑问?
- 1 为什么要用#!/bin/bash
- 2.执行的过程是什么?
简答:
- 我们从程序执行的角度来说的话,如果一个程序没有执行权限的话,机器就会报错“权限不够”这类的错误;换个角度来说的话,不管什么程序执行,都要判断这个程序是否有对应的权限,如果没有权限,一般是没有办法执行的。
2.在linux系统中,个文件加权限的方式是:chmod ,+x表示给程序叫上可执行的权限。shell收到我们执行的命令后,会调用linux内核命令来新建一个进程来处理我们的命令。像我们C/C++编译完都是二进制的文件,linux内核知道怎么去执行它,但是我们的.sh的脚本文件的话,它是一个文本文件,内核不知道怎么去执行,所以就该我们的“#!/bin/bash”出场了,这个我更愿意叫他解释器。当命令行发现“#!”的时候,它就会在这个后面找到解释器的路径,当然,一个机器可能有几个解释器,我们可以用命令“whereis shell”进行查看!到此为止,我们就知道为什么要用“#!/bin/bash”了!!!!!
网友评论