一、Bash的特性:
1、支持命令历史、命令补全、路径补全
2、支持管道、重定向
3、支持命令别名
4、支持命令行编辑
5、支持命令行展开
6、支持文件名通配
7、支持变量
8、支持编程
二、Bash支持的引号:
1、反引号,键盘左上角Esc下面的键,用于命令替换
[root@ymm-xiaokeai ~]# echo `pwd`
/root
2、双引号,弱引用,可以实现变量替换
[root@ymm-xiaokeai ~]# echo "$a"
123
3、单引号,强引用,不完成变量替换
[root@ymm-xiaokeai ~]# echo 'a'
a
三、Bash常用操作技巧之光标跳转:
Ctrl+a 跳到命令行首
Ctrl+e 跳到命令行尾
Ctrl+u 删除光标至命令行首的内容
Ctrl+k 删除光标至命令行尾的内容
Ctrl+l 清屏
四、Bash常用操作技巧之命令历史:
history命令用于查看命令历史
[root@ymm-xiaokeai ~]# history
1 ip a
2 vi ifcfg-etho
3 ip a
4 cat ifcfg etho
5 vim etc/default/grub
history命令常用选项:
-c:清空命令历史
[root@ymm-xiaokeai ~]# history -c
[root@ymm-xiaokeai ~]# history
1 history
-d [n]:删除第n条命令的历史
[root@ymm-xiaokeai ~]# history -d 4
[root@ymm-xiaokeai ~]# history
1 history
2 a=123
3 b=1
4 history
5 history -d 4
6 history
-w:保存命令历史至历史文件~/.bash_history中
五、Bash常用操作技巧之命令历史(二):
!n:执行命令历史中的第n条命令
[root@ymm-xiaokeai ~]# !1
history
1 history
2 a=123
!
-n:执行命令历史中的倒数第n条命令
!!:执行上一条命令
[root@ymm-xiaokeai ~]# !!
history
1 history
2 a=123
!string:执行命令历史中最近一个以指定字符串string开头的命令
[root@ymm-xiaokeai ~]# !cat
cat /tmp/123/1
cat: /tmp/123/1: 没有那个文件或目录
!$:引用前一条命令的最后一个参数
[root@ymm-xiaokeai ~]# !$
/tmp/123/1
-bash: /tmp/123/1: 没有那个文件或目录
esc,.:按下ESC键松开后立即按 . 键,引用前一条命令的最后一个参数
六:Bash常用操作技巧之命令别名:
alias CMDALIAS='COMMAND [options] [arguments]’
[root@ymm-xiaokeai ~]# alias net='systemctl restart network'
七、Bash常用操作技巧之命令替换:
把命令中某个子命令替换为其执行结果的过程被称作命令替换。
命令替换有两种方式:
$(COMMAND)
COMMAND
八、Bash常用操作技巧之命令行展开:
~:展开为用户的家目录
~USERNAME:展开为指定用户USERNAME的家目录
{}:可承载一个以逗号分隔的列表,并将其展开为多个路径
/tmp/{a,b} = /tmp/a, /tmp/b
/tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi
[root@ymm-xiaokeai ~]# mkdir A/{B/1,C/2,D/3} -p
[root@ymm-xiaokeai ~]# tree
.
├── 1.txt
├── A
│ ├── B
│ │ └── 1
│ ├── C
│ │ └── 2
│ └── D
│ └── 3
九、Bash环境变量介绍:
PATH:命令搜索的路径
[
root@ymm-xiaokeai ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
/bin 是用户的普通命令
/sbin 用户管理命令
HISTSIZE:定义命令历史最多能存多少条,默认为1000条
[root@ymm-xiaokeai ~]# echo $HISTSIZE
1000
SHELL:当前系统使用的shell
[root@ymm-xiaokeai ~]# echo $SHELL
/bin/bash