Bash 特性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bash 特性相关的知识,希望对你有一定的参考价值。

基础语法

命令             [选项]           [参数]
command [option] [argument]
[ ]在语法中,中括号是可有可无的意思

ls:list
ls:查看当前所在工作目录下的文件和目录
[root@leidage <sub>]# ls
anaconda-ks.cfg

-a:查看所有文件包括隐藏文件
root@leidage </sub>]# ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .tcshrc

-l:查看文件的详细属性信息
[root@leidage ~]# ls -l
total 4
-rw-------. 1 root root 1494 Mar 14 22:52 anaconda-ks.cfg

命令补全

Tab键
默认可以补全,命令和参数
单次Tab键默认补全命令和参数,双次可以查看需补全的命令全部命令

bash快捷键

Ctrl + l:清屏 Ctrl + c:终止命令的执行

Ctrl + e:end 将光标快速移动到行末 

Ctrl + a:ahead 将光标快速移动到行首

Ctrl + w:以空格为分隔符,删除光标前面到空格之间的内容

Ctrl + k:删除光标之后的所有内容

Ctrl + u:删除光标之前的所有内容

Ctrl + d:退出当前用户的登录

Ctrl + r:搜索执行过的历史命令

Ctrl + 左右:按照单词移动光标

  • 以单词为单位进行移动

ESC + . :复制上一条命令,最后一个空格后面的内容

注释 #:是给人看的,计算机不认识

历史命令

history:查看历史命令
[root@leidage <sub>]# history
1 history -d
2 ls
3 history -d
4 history
5 history -d
6 history -d 1
7 history
8 history -w
9 ping baidu.com
10 ls
11 ls -a
12 ls -l
13 ping baidu.com
14 LS
15 ls
16 ls -a
17 vi /etc/sysconfig/network-scripts/ifcfg-ens33
18 ls-a
19 #ls -a
20 history
[root@leidage </sub>]#


-c:clear 清除历史命令
20 history
[root@leidage <sub>]# history -c
[root@leidage </sub>]# history
1 history
[root@leidage <sub>]#


-d:delete 删除指定编号的历史命令
-bash: ls-l: command not found
[root@leidage </sub>]# history
1 history
2 ls
3 ls-a
4 ls-l
5 history
[root@leidage <sub>]# history -d1
[root@leidage </sub>]# history
1 ls
2 ls-a
3 ls-l
4 history
5 history -d1
6 history
[root@leidage <sub>]#

-w:write 保存历史命令到一个文件中(将历史命令保存到家目录下的.bash_history 隐藏文件中
[root@leidage </sub>]# history
1 ls
2 ls-a
3 ls-l
4 history
5 history -d1
6 history
7 history -w
8 ls -a
9 ls .bash_history
10 ls -l .bash_history
11 cat .bash_history
12 history
[root@leidage <sub>]# history -w
[root@leidage </sub>]# ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .tcshrc
[root@leidage <sub>]# cat .bash_history
ls
ls-a
ls-l
history
history -d1
history
history -w
ls -a
ls .bash_history
ls -l .bash_history
cat .bash_history
history
history -w
[root@leidage </sub>]#
!+命令的一部分:执行上一条,含有该命令一部分的命令内容 (常用)
[root@leidage <sub>]# ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .tcshrc
[root@leidage </sub>]# !ls
ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .tcshrc
[root@leidage <sub>]#


!!:执行上一条命令
[root@leidage </sub>]# ls -al
total 28
dr-xr-x---. 2 root root 135 Mar 16 22:37 .
dr-xr-xr-x. 17 root root 241 Mar 16 22:25 ..
-rw-------. 1 root root 1494 Mar 14 22:52 anaconda-ks.cfg
-rw-------. 1 root root 141 Mar 18 00:02 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 178 Mar 16 22:37 .bashrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
[root@leidage <sub>]# !!
ls -al
total 28
dr-xr-x---. 2 root root 135 Mar 16 22:37 .
dr-xr-xr-x. 17 root root 241 Mar 16 22:25 ..
-rw-------. 1 root root 1494 Mar 14 22:52 anaconda-ks.cfg
-rw-------. 1 root root 141 Mar 18 00:02 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 178 Mar 16 22:37 .bashrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
[root@leidage </sub>]#

!+数字:执行历史命令中编号所在命令内容
[root@leidage <sub>]# history
1 ls
2 ls-a
3 ls-l
4 history
5 history -d1
6 history
7 history -w
8 ls -a
9 ls .bash_history
10 ls -l .bash_history
11 cat .bash_history
12 history
13 history -w
14 ls -a
15 cat .bash_history
16 ls
17 ls -a
18 ! ls
19 ls -a
20 ll
21 ls -al
22 history
23 ls-a
24 history
[root@leidage </sub>]# !8
ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .tcshrc
[root@leidage ~]#

命令的别名

# 查看系统内置的别名都有哪些
alias
[root@leidage <sub>]# alias
alias cp=cp -i
alias egrep=egrep --color=auto
alias fgrep=bash基本特性

bash特性

Bash基础特性

bash特性小结&bash变量

bash特性

shell编程bash特性