常用的 shell 快捷键
ctrl + a // 移到行首
ctrl + e // 移到行尾
ctrl + y // 插入最近删除的单词或语句
ctrl + k // 删除光标处到行尾的部分
ctrl + u // 删除光标处到行首的部分
ctrl + w // 删除光标所在处到当前单词开头部分或语句
alt + a //移到光标所在单词首部
alt + e //移到光标所在单词尾部
alt + a //删除光标所在处至单词首部
Shell 中的引号
shell 脚本中的引号主要分为四种不同类型:
- 单引号: ' '
- 双引号: " "
- 反引号:
- 反斜杠: \
❏ 单引号
shell 中的单引号会忽略其中所有的特殊字符,单引号之间的所有内容被视为一个元素
例一:$ 符号失去功能
a=1
-------
echo $a
1
--------
echo '$a'
$a
例二:回车键也保留在单引号下
echo 'how are
> you'
how are
you
❏ 双引号
- 双引号的工作方式与单引号基本相同,但是有几个特殊字符不会被忽略:
(1) 美元符号: $
(2) 反引号: `
(3) 反斜杠: \
a=1
echo "$a"
1
echo "\$a"
$a
1. 双引号可以用于隐藏 shell 中的单引号
echo "'a'"
'a'
❏ 反引号
反引号的功能为命令替换
docker run --network host --pid host ${containerID}
----->
echo "today is `date`"
today is Tue Jun 28 16:16:39 CST 2022
反引号的功能与 "() 的方式,因此不推荐使用反引号
❏ 反斜杠
- 反斜杠就像在单词周围加上单引号,如果反斜杠后面跟的是特殊字符,那么特殊字符将失去意义
var=variable
echo \var
var
echo $var
variable
echo \$var
$var
- 反斜扛还可以表示继续改行,当shell命令太长时,可以使用反斜杠在多行显示单个命令,提高命令的可读性
docker run --network host --pid host ${containerID}
----->
docker run \
--network host \
--pid host \
${containerID}
VI 基础和常用快捷键
vi 主要有三种模式
命令行模式
vi 打开一个文件即进入命令行模式,常用的快捷键:
0: 移到该行第一个字符处
$: 移到该行的最后一个字符出
G: 跳转到文件的结尾行
gg: 跳转到文件的首行
dd: 删除当前行
yy: 复制当前行
p: 粘贴复制的行到下一行
P: 粘贴复制的行到上一行插入模式
命令行模式下输入: i/a/o 进入插入模式
i: 在当前字符的上一个字符处插入
I: 在当前行的行首插入
a: 在当前字符的下一个字符出插入
A: 在当前行的的行尾插入
o: 在当前行的下一行插入一行
O: 在当前行的上一行插入一行编辑模式
命令行模式下输入 : 进入编辑模式
常用操作:
:set nu 显示行号
:set nonu 不显示行号
:n 跳转至第n行