cat >temp
输入内容到temp文件中,如果存在temp则覆盖,没有则新建
cat >>temp
追加内容
cat temp1>>temp2
将temp1中的内容追加到temp
; 一个命令行执行多条语句
1.双引号:用于带空格的字符串
2.单引号 阻止shell解析字符串
3.单撇反引号:将执行命令的结果放到变量里
variable=\$bva
\阻止shell对”$“元字符的解释工作
变量名=字符串
$变量名 或 ${变量名} 访问变量
unset 变量名取消变量名
readonly 变量名
无法直接进行,可通过expr运算符
expr $num1 运算符 $num2
如果运算符为*,&,|,<,>必须用\转义符使其失去特殊含义
alias
直接使用可查看命令别名
自定义命令别名
alias 别名=”原命令“
unalias 别名 取消别名
history [-c] [n]
-c 清空(clear)
-n n为数字,即显示几条命令
==!!==上一条命令,感觉用处不大
#! /bin/bash
# 注释
echo ”hello world“
date
1.授权
chmod 775 脚本名
或
chmod a+x 脚本名
2.用 source 脚本名执行
read -p "please input your name" name
echo "hello " $name
执行
bash name
| 单行注释 | # |
|---|---|
| 多行注释 | :< |


| -eq | 等于 |
|---|---|
| - neq | not equal |
| -gt | A greater than B |
| -lt | A less than B |
| -ge | … |
| -le | … |
| 与 | -a and (&&) |
|---|---|
| 或 | -o or (||) |
| 非 | ! |
bash [-x][-n] 脚本名
| -x | 执行脚本本同时显示脚本语句 |
|---|---|
| -n | 检查语法错误不执行 |

${#string};
${#string[0]}
${string:1:4}
值与值之间用空格隔开
数组名=(值1 值2 ... 值n)
${数组名[下标]} 读取单个
${数组名[@]} 读取全部
${#数组名[@]}
|
[外链图片转存中…(img-AZme5QDw-1655274286263)]
${#string};
${#string[0]}
${string:1:4}
值与值之间用空格隔开
数组名=(值1 值2 ... 值n)
${数组名[下标]} 读取单个
${数组名[@]} 读取全部
${#数组名[@]}