如果你对该文章中的内容有疑问/不解,可以点击此处链接提问
要注明问题和此文章链接地址 点击此处跳转
centos7支持的shell
cat /etc/shells
c7默认shell
echo $SHELL
/bin/bash
shell变量
1. 全局变量(环境变量)
echo $PS1
echo $PATH
echo $HOME
echo $SHELL
echo $UID
自定义环境变量
方法1
export OLDBOY="I am oldboy" //定义
echo $OLDBOY //打印
方法2
OLDBOY="I am oldboy"
export OLDBOY
在命令行中的是临时生效,如果想永久生效,需放在文件中
/etc/profile==>~/.bash_profile==>~/.bashrc==>/etc/bashrc (前者会被后者覆盖)
将命令加入到文件中并不生效,需要执行 . /etc/bashrc 加载一下
2. 局部变量(自定义变量)
变量名=值
赋值符号两边不能有等号.
变量可以相加.
后者覆盖前者
a=1
echo $a
3. 表达式
[表达式] 中括号两端需要有空格
[ a=a ] && echo 1||echo 0
[ "a" = "b" ] && echo 1||echo 0
如果表达式成立打印1 否则打印0
4. 整数表达式
> -gt
>= -ge
< -lt
<= -le
= -eq
!= -ne
[ $a -eq 1 ] && echo 1 || echo 0
整数表达式两端必须有空格
5. 字符表达式
-z 变量内容长度为0时 为真为空
-n 不为0,为真
a == b 字符是否相同
[ -z "$a" ] && echo 1 || echo 0
6 判断
if [表达式]
then
命令
else
命令
fi
---
if [表达式]
then
命令
elif [表达式]
then
命令
else
命令
fi
脚本第一行
#!/bin/bash (linux默认bash ,默认可不写)
7. read 命令 读取用户输入
-p 提醒
-t 多长时间内等待输入
read -t 3 -p "请输入"
read -t 3 -p "请输入" aa 使用aa接收
特殊位置变量
$1 脚本文件输入的第一个参数
$2 脚本文件输入的第二个参数
8. for
for n in 取值列表
do
执行命令
done
for n in 1 2 3 4 5
echo n
for n in