
Shell
什么是Shell
Shell是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁
Shell还是一个功能相当强大的编程语言,易编写、易调试、灵活性强。
Shell 编程跟 java、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了
入门
Linux 的 Shell 种类众多,常见的有:cat /etc/shells
Bash由于易用和免费,Bash 在日常工作中被广泛使用。同时,Bash 也是大多数 Linux 系统默认的 Shell。
echo $SHELL
输出默认shell
脚本以#!/bin/bash 开头(指定解析器)
案例
vim helloworld.sh 在 helloworld.sh 中输入如下内容
#!/bin/bash
echo "helloworld"
“#!” 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell
脚本的常用执行方式
第一种:采用 bash 或 sh+脚本的相对路径或绝对路径(不用赋予脚本+x 权限)
(1)sh+脚本的相对路径。sh ./helloworld.sh
helloworld
(2)sh+脚本的绝对路径。 sh /home/atguigu/helloworld.sh
helloworld
(3)bash+脚本的相对路径。 bash ./helloworld.sh
helloworld
(4)bash+脚本的绝对路径。 bash /home/atguigu/helloworld.sh
helloworld
注意,一定要写成 ./test.sh ,而不是 test.sh ,运行其它二进制的程序也一样,直接写 test.sh ,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前