一、shell入门简介
1.1什么是shell
# 什么是shell网上有很多shell的概念介绍,其实都很官方化,如果你对linux命令很熟悉,那么编写shell就不是一个难事,shell本质上是linux命令,一条一条命令组合在一起,实现某一个目的,就变成了shell脚本。它从一定程度上减轻了工作量,提高了工作效率。# 官方化的shell 介绍shell通过提示您输入,向操作系统解释该输入,然后处理来自操作系统的任何结果输出,简单来说shell就是一个用户跟操作系统之间的一个命令解释器。# 常见的shell有哪些Bourne Shell(/usr/bin/sh或/bin/sh)Bourne Again Shell(/bin/bash)C Shell(/usr/bin/csh)K Shell(/usr/bin/ksh)Shell for Root(/sbin/sh)# 最常用的shell是Bash,也就是Bourne Again Shell。Bash由于易用和免费,在日常工作中被广泛使用,也是大多数Linux操作系统默认的Shell环境。
如何查看当前系统支持的shell
[root@localhost ~]# cat /etc/shells
如何查看当前系统默认的shell
[root@localhost ~]# echo $SHELL
1.2 shell编程注意事项
1、shell 命名: Shell脚本名称命名-般为英文、大写、小写,后缀以.sh 结尾;
2、不能使用特殊符号;
3、见名知意;
4、shell编程首行需要指定脚本解释器#!/bin/sh或#!/bin/bash;
5、shell脚本变量不能以数字、特殊符号开头,可以使用下划线-,但不能用破折号——。
1.3第一个shell脚本hello world
# 创建一个Helloword.sh 文件
[root@aly_server01~]# touch Helloword.sh# 编辑Helloword.sh 文件
[root@aly_server01~]# vim Helloword.sh
[root@aly_server01~]# cat Helloword.sh
#!/bin/bash
# This is ower first shell
echo "hello world"
[root@aly_server01~]#
[root@aly_server01~]# ll Helloword.sh
-rw-r--r-- 1 root root 85 Sep 20 22:26 Helloword.sh# 赋予执行权限
[root@aly_server01~]# chmod o+x Helloword.sh # 运行helloword.sh 脚本
[root@aly_server01~]# ./Helloword.sh
hello world
[root@aly_server01~]#
1.4shell脚本的执行方法
方法一:当前目录下./a.sh 文件需要执行权限
方法二:绝对路径 /test/a.sh 文件需要执行权限
方法三:用sh 或bash来执行 bash a.sh 文件 不要执行权限(建议使用方法)
方法四:用source a.sh 或 . a.sh 执行会开启子shell 文件 不要执行权限 (一般不用 vim /etc/init.d/network )