Shell 编程
简介:
Shell 是一个用 C 语言编写的程序,通过 Shell 用户可以访问操作系统内核服务。
Shell 既是一种命令语言,又是一种程序设计语言
Linux 的 Shell 解释器 种类众多,一个系统可以存在多个 shell,可以通过 cat /etc/shells 命令查看系统中安装的 shell解释器。
Bash 由于易用和免费,在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。
Shell变量的命名规则?
变量名必须是以字母或下划线字符“_”开头,后面跟字母、数字或下划线字符。不要使用?、*或其他特殊字符命名你的变量
Shell 解释器
java 需要 虚拟机解释器, 同理 shell脚本也需要 解析器
- [root@node04 shells]# cat /etc/shells
- /bin/sh
- /bin/bash
- /sbin/nologin
- /bin/dash
- /bin/tcsh
- /bin/csh
Shell特殊字符用来处理参数代表什么意思?
- $0 当前脚本的文件名
- $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。
- $# 传递给脚本或函数的参数个数。
- $* 传递给脚本或函数的所有参数。
- $@ 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。
- $? 上个命令的退出状态,或函数的返回值。一般情况下,大部分命令执行成功会返回 0,失败返回 1 。
- $$ 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID
一 编写 shell 脚本
① 新建 /export/hello.sh 文件
#!/bin/bash
echo 'hello shell'
解 : #! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
echo 命令用于向窗口输出文本。
二 执行shell脚本 的 多种方式
①
[root@node04 shells]# /bin/sh 01.sh
hello shell②
[root@node04 shells]# /bin/bash 01.sh
hello shell③
[root@node04 shells]# ./hello.sh
hello shell