bash 一些用法
shell:子shell
bash:
1.命令历史、命令不全
2.管道、重定向
3.命令别名
4.命令行编辑
5.命令名展开
6.文件名通配
7.变量
8.编程,脚本
命令行编辑:
光标跳转:Ctrl+a :跳到命令行首
Ctrl+e :跳到命令行尾
Ctrl+u :删除光标至命令行首的内容
Ctrl+k :删除光标至命令行尾的内容
Ctrl+“向前/向后” :调到上一个单词的首字母
Ctrl+l :清屏
命令历史:
查看命令历史:history type history
-c :清空命令历史
-d :删除指定位置的命令 -d 200 3 200次的命令
-w :保存命令历史至历史文件中 ~/ .bash-history
环境变量:
PATH: 命令搜索路径 echo $PATH 更改路径PATH="$PATH":/bin
HISTSIZE:命令历史缓冲区大小 echo $HISTSIZE
命令历史的使用技巧:
!n :执行命令历史中的第n条命令
!-n:执行命令历史中的倒数第n条命令
!!:执行上一条命令
!string(字符串):执行命令历史中最近一个以指定字符串开头的命令 !man
!$:引用前一个命令的最后一个参数
Esc,.:引用前一个命令的最后一个参数
Alt+.:引用前一个命令的最后一个参数
命令不全:搜索PATH环境变量所指定的每个路径下我们给出的字符串开头的可执行文件,如果多于多余一个,两次tab,可以给出列表,否则将直接补全。
PATH: 补全
路径补全:搜索我们给出的起始路径下的每个文件名,并试图补全。
命令别名:
alias "CMSALIAS=COMMAND [options] [arguments]"
alias cls=clear
删除别名 unalias
unalias cls
文件名通配:globbing
*:任意长度的任意字符
?:任意单个字符
[]:匹配指定范围内的任意字符
[0-9] ,[a-z],[a-zA-Z],[ABCD],[0-9a-zA-Z]
[^]:匹配指定范围之外的任意单个字符,取反。
[:space:]:空白字符 这就代表空格,进行引用时。[[:space:]]
[:punct:]:标点符号
[:lower:]:小写字母
[:upper:]:大写字母
[:alpha:]:大小写字母
[:digit:]:数字
[:alnum:]:数字和大小写字母
[[:alpha:]]*[[:space:]]*[[:
引用符号
echo: 显示,打印出
echo "The current directory is $(pwd)." -------The current directory is /home/yang.
touch ./file-$(date +%F-%H-%M-%S).txt--------file-2018-03-20-00-24-48.txt
bash支持的引号:
``:命令替换
“”:弱引用,可以实现变量替换
'':强引用,不完成变量替换