002_bash操作技巧 - llj2kh/studynote GitHub Wiki
bash命令操作技巧
1 bash中的快捷键
ctrl+ a 光标移动到行首
-
ctrl+ e 光标移动到行尾
-
ctrl+ u 光标所在位置删除到行首
-
ctrl+ k 光标所在位置删除到行尾
-
ctrl+ r 调出最近一条含有关键字的命令
-
ctrl+ 左|右 光标移动以单词为单位
-
ctrl+ c 撤销以输入的命令
-
ctrl+ d 关闭当前环境
-
ctrl+ s 锁定当前的终端
-
ctrl+ q 解除对终端的锁定
2 "$"的使用,好像在终端不常使用
$?: 上一条命令的执行结果,0表示成功。
-
$_ 上一条命令的最后一个变量/命令
3 "!" 的使用
!n 执行history里第n条命令
-
!! 执行上一个命令,等同于!-1
-
!cp:n1-n2 使用cp命令的第n1-n2个参数
-
!cp:$ 使用cp命令的最后一个参数
-
!:2 使用上一个命令的第二个参数
4 magic-space
-
编辑 /etc/bash.bashrc 文件,末尾添加bind Space:magic-space
即可将带有 ! 号的命令进行替换。
5 色彩使用
Ctrl键:\033
[ 控制字符和颜色代码之间的分隔符;
所有的颜色代码都应该使用m结尾
颜色代码:
0:表示关闭颜色显示属性,恢复为黑白色;
1:加粗显示文本字符;
4:为文本字符添加下划线标识;
5:使文本字符闪烁;
7:将文本字符的背景颜色和前景颜色交换;
8:将文本字符的背景颜色设置为与前景色相同;
30-39:设置文本字符的前景色,38,39为保留暂时未被使用;
30为灰色;31为红色;32为绿色;33是黄色;34为蓝色;35为紫色;36为靛蓝色;37为白色;38,39保留但是默认为黑色;
40-49:设置文本字符的背景色,48,49为保留暂时未被使用;
40为黑色背景;41为红色背景;42为绿色背景;43为黄色背景;44为蓝色背景;45为紫色背景;46为靛蓝色背景;47为灰色背景;
注意:此类控制字符和颜色代码必须放置在echo -e模式中,否则Ctrl不生效,颜色后面必须加m;
例子:
#字体色30-37
echo -e "\033[30m黑色字\033[0m"
echo -e "\033[31m红色字\033[0m"
echo -e "\033[32m绿色字\033[0m"
echo -e "\033[33m黄色字\033[0m"
echo -e "\033[34m蓝色字\033[0m"
echo -e "\033[35m紫色字\033[0m"
echo -e "\033[36m天蓝字\033[0m"
echo -e "\033[37m白色字\033[0m"
#字背景颜色范围:40-47
echo -e "\033[40;37m黑底白字\033[0m"
echo -e "\033[41;30m红底黑字\033[0m"
echo -e "\033[42;34m绿底蓝字\033[0m"
echo -e "\033[43;34m黄底蓝字\033[0m"
echo -e "\033[44;30m蓝底黑字\033[0m"
echo -e "\033[45;30m紫底黑字\033[0m"
echo -e "\033[46;30m天蓝底黑字\033[0m"
echo -e "\033[47;34m白底蓝字\033[0m"
#.....
#控制选项说明
#\033[0m关闭所有属性
#\033[1m设置高亮度
#\033[4m下划线
echo -e "\033[4;31m下划线红字\033[0m"
#闪烁
echo -e "\033[5;34m红字在闪烁\033[0m"
#反影
echo -e "\033[8m消隐\033[0m "
5.1 PS1 设置
在PS1中设置字符颜色的格式为:[\e[F;Bm],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47。
PS1="[\e[37;40m][[\e[36;40m]\u@\h [\e[36;40m]\w[\e[0m]]\$ " PS1的常用参数以及含义: \d :代表日期,格式为weekday month date,例如:"Mon Aug 1" \H :完整的主机名称 \h :仅取主机名中的第一个名字 \t :显示时间为24小时格式,如:HH:MM:SS \T :显示时间为12小时格式 \A :显示时间为24小时格式:HH:MM \u :当前用户的账号名称 \v :BASH的版本信息 \w :完整的工作目录名称 \W :利用basename取得工作目录名称,只显示最后一个目录名 # :下达的第几个命令 $ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $