linux基础之bash特性

光标跳转:


Ctrl+a:跳到命令行首
Ctrl+e:跳到命令行尾
Ctrl+u: 删除光标至命令行首的内容
Ctrl+k: 删除光标至命令行尾的内容
Ctrl+l: 清屏

命令历史的使用技巧:


!n:执行命令历史中的第n条命令;
!-n:执行命令历史中的倒数第n条命令; 
!!: 执行上一条命令;
!string:执行命令历史中最近一个以指定字符串开头的命令
!$:引用前一个命令的最后一个参数; 
按下Esc键松开再按 “.” 也可以实现!$的功能
Alt + .也可以实现!$的功能

命令替换


把命令中某个子命令替换为其结果的过程
例:

[root@iZ28g26851kZ ~]# echo The current directory is $(pwd)
The current directory is /root
[root@iZ28g26851kZ ~]# cd /opt/
[root@iZ28g26851kZ opt]# echo The current directory is $(pwd)
The current directory is /opt
[root@iZ28g26851kZ opt]# 

一般格式为
$(command)
例2:创建一个文件,文件名为当前日期时间

[root@iZ28g26851kZ opt]# touch $(date +%F-%H:%M:%S)_log.txt
[root@iZ28g26851kZ opt]# ls
2016-05-05-10:20:24_log.txt  rh  test  x
[root@iZ28g26851kZ opt]# touch $(date +%F-%H:%M:%S)_log.txt
[root@iZ28g26851kZ opt]# ls
2016-05-05-10:20:24_log.txt  2016-05-05-10:20:37_log.txt  rh  test  x
[root@iZ28g26851kZ opt]# 

bash支持的引号


``:命令替换
"":弱引用,可以实现变量替换
'':强引用,不完成变量替换

文件通配符


*:匹配任意长度的任意字符
?:匹配任意单个字符
[]:匹配指定范围内的任意单个字符
    [:space:]:空白字符
    [:punct:]:标点符号
    [:lower:]:小写字母
    [:upper:]:大写字母
    [:alpha:]:大小写字母
    [:digit:]:数字
    [:alnum:]:数字和大小写字母
    当然这些都可以用命令 man 7 glob 查看

[^]:匹配指定范围之外的任意单个字符

例如:我们要查找一个文件名中间有是空格字符的文件

[root@iZ28g26851kZ opt]# ll
total 4
-rw-r--r--  1 root root    0 May  5 10:48 a b
-rw-r--r--  1 root root    0 May  5 10:48 asd
-rw-r--r--  1 root root    0 May  5 10:48 gfsd
drwxr-xr-x. 2 root root 4096 Nov 22  2013 rh
[root@iZ28g26851kZ opt]# ll *[[:space:]]*
-rw-r--r-- 1 root root 0 May  5 10:48 a b
[root@iZ28g26851kZ opt]# 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值