Bash特性之一:
1、命令行展开:能够把一个特殊字符换成别的字符
{,}展开为多个条目,例如 mkdir /home/{od,a,b} (注意不能有空格)
2、文件和目录管理类的命令
目录:
cd ~[username]
~:指定用户的家目录
cd -:回到上一次所在的目录
路径:
相对路径中:
.:当前目录
..:父目录
pwd: print working directory 显示当前目录
mkdir:创建目录
-p:先创建父目录
-v:显示详细信息
rmdir:删除空目录
-p:只能删除一线单的目录
3、shell的引用:
‘’:强引用,变量替换不会进行
"":弱引用,能够执行变量替换
``:命令替换,引用命令的执行结果,另外一种方式$()
变量替换:${变量名}
echo 显示
Bash的特性之二:命令历史
1、bash默认会保持此前执行过的命令列表
当前shell进程的保存在缓冲区中,缓冲区中的命令会在shell退出的保存在文件中 .bash_history。
可以使用上下箭头键可以翻看此前执行过的命令。
history:
!数字:执行history中第数字条的命令
!!:上一条命令
!-数字:表示执行命令列表中的倒数第数字条命令
!$:执行上个命令中的最后一个参数:ESC,.
!string:执行命令列表中的最近一次以string开头的命令
-d 数字 删除第数字条记录
-c 清空history列表
-a:追加当前回话的命令到历史列表中去
-n:读取所有在回话列表中的 但是不在当前回话列表中的
2、命令历史相关的环境变量
HISTSIZE:历史命令中可以保存的个数
HISTFILE: 历史命令保存的文件
HISTFILESIZE:历史文件中可以保存的命令个数
HISTCONTROL:控制命令历史的生成机制
ignoredups:忽略记录重复的命令,连续的相同命令
ignorespace:以空格开头的命令不会被记录
ignoreboth:同时具有上面两种特性
补充点:
1、Linux文件系统的另一个特性:以点开头的文件为隐藏文件 通过ls -a 查看
2、shell中的变量赋值
注意: 1、变量在赋值是不能再前面带$
2、变量名只能包含字母、数字和下划线,并且不能以数字开头
3、变量名区分大小写
4、尽量能见名知义
Bash的特性之三:命令别名
alias:当前shell中定义的所有别名(任何随进程而生的属性,会在进程结束,属性消失)
命令使用:
alias 别名=‘原始命令’
unalias 别名 取消定义的别名
在命令前加使用命令本身,而不是别名
Bash特性之四:常用命令
1、file FILE..:查看文件内容的格式
2、cat:将文本连接起来显示在标准输出上
-E --show-ends 显示结束符$
-e:等于-vE
-v:显示非打印符
-n:显示每行按顺序编号
-s:将多个连续的空白行合并显示一个空白行
3、tac:逆序显示文件 (分屏显示)
4、more:只支持向后翻(文件尾部以后)
5、less:支持前后翻
6、head:
-n #:显示前多少行
tail
-n # 显示后多少行
-f:实时监控文件尾部变化
7、 echo命令的用法:
-e “处理特殊字符”
a 发出警告声;
删除前一个字符;
c 最后不加上换行符号;
f 换行但光标仍旧停留在原来的位置;
换行且光标移至行首;
光标移至行首,但不换行;
插入tab;
v 与f相同;
\ 插入字符;
nn 插入nnn(八进制)所代表的ASCII字符;