bash 在线维基百科:http://zh.wikipedia.org/wiki/Bash
bash 的常用快捷键
Ctrl+p 重复上一次命令
Ctrl+a 跳到前一个字符
Ctrl+k 取消
Ctrl+r 向前查找用过的命令
Ctrl+k 删除提示符后全部字符
Ctrl+u 删除提示符前的所有字符
Ctrl+e 转到字符尾部
Ctrl+a 光标移到行首
Ctrl+e 光标移动到行尾
Ctrl+d 退出当前shell
Ctrl+l 清屏= clear
Ctrl+u 清除光标前至行首的所有内容
Ctrl+k 清除光标前至行尾的所有内容
!! :执行上一条命令
!if :执行最近的以if开头的命令,eg:!ifconfig
!ifconfig:p :仅打印输出,而不执行
!$ :上一条命令的最后一个参数
!$:p :打印输出!$ 的内容
!* :上一条命令的所有参数
!*:p :打印输出!*的内容
^ls :删除上一条命令中的ls
^ls^cat :将上一条命令中的ls替换为cat
^ls^cat^ :将上一条命令中的所以的ls替换为cat
bash shell 常用判断类型
数字的判断
num1 -eq num2 两数相等为真
num1 -gt num2 num1大于num2为真
num1 -ge num2 num1大于等于num2为真
num1 -lt num2 num1小于num2为真
num1 -le num2 num1小于等于num2为真
> | 数值大于 注释 1 |
< | 数值小于 注释 1 |
>= | 数值大于等于 注释 1 |
<= | 数值小于等于 注释 1 |
== | 数值等于 注释 1 |
!= | 数值不等于 注释 1 |
文件的判断
-r file 用户可读为真
-w file 用户可写为真
-x file 用户可执行为真
-f file 文件是文件为真
-d file 文件是目录为真
-c file 文件为字符特殊文件为真
-b file 文件为块特殊文件为真
-s file 文件大小非0时为真
逻辑判断
-a 与
-o 或
! 非
操作符 | 描述 |
& | 按位与运算 |
| | 按位或运算 |
^ | 按位异或运算 |
~ | 按位取反运算 |
<< | 按位左移运算 |
>> | 按位右移运算 |
&= | 按位与赋值运算 |
|= | 按位或赋值运算 |
^= | 按位异或赋值运算 |
<<= | 按位左移赋值运算 |
>>= | 按位右移赋值运算 |
条件判断式if
if 单分支
if 条件判断命令 ; then
命令序列
fi
if 双分支
if 条件判断式 ;then
当判断条件成立时,可以进行的命令输出
else
当判断条件不成立时,可以进行的命令输出
fi
if 多分支
if 条件判断式一;then
当判断条件一成立时,可以进行的命令输出
elif 条件判断式二 ;then
当判断条件二成立时,可以进行的命令输出
else
当判断条件一、二都不成立时,可以进行的命令输出
fi
eg:
判断一个用户是否存在,如果存在说明已存在,并显示其ID号和shell;不存在就显示用户不存在。
eg:
如果当前主机的主机名为空,或者为"localhost",则将其修改为90sec
eg:利用if多分支判断成绩
for语句的格式:
for VAR_NAME in LIST
do
循环体
done
eg:
创建10个用户,user1-10,如果用户不存在,才添加,并以绿色显示添加成功;如果存在,则以红色显示已经有此用户;
case判断语句:
case 变量引用 in
PATTERN1)
分支1
;;
PATTERN2)
分支2
;;
...
*)
分支n
;;
esac
eg:
由用户从键盘输入一个字符,并判断该字符是否为字母、数字或者其他字符,
后期会更新 大量实用案例,敬请关注————
转载于:https://blog.51cto.com/90sec/1534812