history 查看历史命令
-c 清空
-w 写入历史保存文件
默认保存1000条,可以在配置文件中更改
!n 执行第n条历史命令
!!
!字符串
让别名永久生效
修改~/.bashrc
ls abc >> abc 2>&1
命令 &> abc
命令 &>> abc
把命令的正确结果和错误结果都写到同一个文件下
多命令顺序执行
命令1;命令2
dd if=输入文件 of=输出文件 bs=字节数 count=个数
grep
-i 忽略大小写
-n 输出行号
-v 反向查找
--color=auto 找到的关键字用颜色显示
通配符 用来匹配文件名
``的作用与$()作用相同。
用户自定义变量
环境变量
位置参数变量
预定义变量
变量叠加
aa = "$aa"456
aa=${aa}456
变量删除
unset aa
变量都是字符串类型。变量用等号连接值,等号左右两侧不能有空格。
用户自定义变量只在当前的Shell中生效
而环境变量会在当前Shell和这个Shell的所有子Shell当中生效。
设置环境变量
export 变量名=变量值
查询变量
env
删除变量
unset 变量名
如何定义子Shell
$n n为数字,$0代表命令本身,$1-$9代表第1-9个参数,第10个以后参数${10}
sum = $(($1+$2))
$* 这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体
$@ 也代表命令行中所有的参数,不过$@把每个参数区分对待
$# 这个变量代表命令行中所有参数的个数
预定义变量
$? 最后一次执行的命令的返回状态。如果这个变量的值为0,正确执行。如果不为0,执行不正确。
$$ 当前进程的PID
$! 后台运行的最后一个进程的进程号(PID)
read [选项] [变量名]
-p “提示信息”:输出提示信息
-n 字符数:read命令只接受指定的字符数,就会执行
-s :隐藏输入的数据,适用于机密信息的输入
declare [+/-] [选项] 变量名
-:给变量设定类型属性
+:取消变量的类型属性
-i:将变量声明为整数型
-x:将变量声明为环境变量
-p:显示指定变量的被声明的类型
declare -i cc=$aa+$bb
expr或let数值运算工具
dd=$(expr $a + $b) +号左右两侧必须有空格
$((运算式))或者$[运算式]
正则表达式
用来在文件中匹配符合条件的字符串,是包含匹配
通配符
用来匹配符合条件的文件名,是完全匹配
sort -t ":' -k 3,3 /etc/passwd
sort -n -t ":" -k 3,3 /etc/passwd
文件1 -ef 文件2 判断文件1是否和文件2的inode一致
-z 字符串 判断字符串是否为空(为空返回真)
-n 字符串 判断字符串是否为非空(非空返回真)
if [ 条件判断式 ]; then
程序
fi
if [ 条件判断式 ]
then
程序
fi
case $变量名 in
"值1")
......
;;
"*')
;;
esac
for 变量 in 值1 值2 值3
do
程序
done
for((初始值;循环条件;变量增加))
while [ 条件判断式 ]
do
程序
done
util 与while相反

被折叠的 条评论
为什么被折叠?



