1、什么是shell及shell脚本?
Shell 是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用户。
shell脚本:为了完成一个任务,将完成任务的命令按照执行顺序的先后,依次写入文件,并给文件执行权限。
2、编程语言分类
编程语言主要用:低级语言和高级语言
(1)低级语言:
机器语言:二进制语言;
汇编语言:符号语言,使用助记符来代替操作码,也就是用符号代替机器语言的二进制码;
它们都是面向机器的语言
(2)高级语言:
它是比较接近自然语言或者说人类语言的一种编程,用人们能够容易理解的方式进行编写程序,
静态语言:编译型语言:c(面向过程,指针)、c++、java(面向对象);
动态语言:解释型语言: php、shell、python、perl;
gcc 编译器:(解释器) 将人类理解的语言翻译成机器理解的语言
3、编写脚本步骤
(1)编写第一个shell脚本
[root@test65-1 ~]# vi test.sh
#!/bin/bash
echo "hellow world"
[root@test65-1 ~]# chmod +x test.sh
[root@test65-1 ~]# sh test.sh
hellow world
[root@test65-1 ~]#
注:
A、!/bin/bash 作用:告诉脚本使用的是哪种命令解释器。如不指 shell,以当前 shell 作为执行的 shell。
B、在 shell 中以#表示开头,整个行就被当作一个注释。执行时被忽略。
C、 shell 程序一般以.sh 结尾
(2)Shell编写步骤
第一步:创建一个包含命令和控制结构的文件;
第二步:赋予文件可执行权限,使用 chmod +x test.sh;
第三步:检测语法错误;
第四步:执行 ./example;
4、Shell常用符号
注释字符
* 匹配所有
? 匹配一个任意字符
! !!执行最后一条命令
~ 当前用户家目录
& 后台执行
‘’ 把括起来的部分视为字符串,还可以防止通配符匹配和特殊符号,在单引号中所有的字符包括特殊字符($,'',`和\)都将解释成字符本身而成为普通字符
“” 在双引号中,除了$, '', `和\以外所有的字符都解释成字符本身,拥有“调用变量的值”、“引用命令”和“转义符”的特殊含义
`` 反引号,扩住的部分视为命令,执行命令。
() 分组,egrep "^(ro|to)" /etc/passwd == egrep "^ro|^to" /etc/passwd
[] 匹配一个指定字符
{} 指定一个范围。touch file{1..100}
; 一行中执行多条命令
| 管道符
\ 转义字符,跟在\之后的特殊符号将失去特殊含义,变为普通字符。如\$将输出“$”符号,而不当做是变量引用
= 赋值
== 等于
个人公众号,微信搜索:linux言叙*