字符串测试
==测试是否相等,等为真,不等为假
等号两边必须有空格
!=测试是否不等,不等为真,等为假
>
<
>=
<=
-n Strring 测试指定字符串是否为空
-s String 测试指定字符串是否不空
bc
scale
循环: 进入条件,退出条件
for
while
until
for 变量 in列表; do
循环体
done
for I in 1 2 3 4;do
done
生成列表
{1..100}
seq
序列
seq 5 10
seq 1 2 10
seq 起始数, 步进 结束数
declare -i
declare -x
declare -i sum=0
for i in{1..100};do
let sum=$[$sum+$i]
done
vim /path/to/somefile
vim +#:打开文件并定位第#行
vim +:打开文件,定位到最后一行
vim +/pattern:打开文件定位到第一次被pattern匹配到的行的 行首
vim 模式
编辑模式
输入模式
末行模式
默认处于 编辑模式
编辑转换输入
i:在当前光标所有字符的前面转为输入模式
a:在当前光标所有字符的后面转为输入模式
o:在当前光标 所在行的下方,创建一行
I光标行首转换为输入模式
A光标行尾转换为输入模式
O光标上方转换为输入模式
输入模式转换为编辑模式:ESC
末行模式:
必须在编辑模式
输入:进入末行模式
d删除行数
10,20d
set nu显示行数
!ls/etc
末行模式-->编辑模式:
ESC,ESC
= 关闭文件
1 末行模式关闭文件
:q退出
:wq保存并退出
:q!不保存退出
:w保存
:w!强行保存
:wq --x
编辑模式下退出
CTRL+Z,ZZ
移动光标
逐字移动
h:左
l:右
j:上
k:下
#h:移动#个字符
2按照单词为单位移动
w:移动到下一个 单词词首
e:跳到当前或者下一个单词的词尾
b:跳到单钱或前一个单词的词首
#w:
3行内跳换
0:绝对行首
^:行首的非空白字符
$:绝对行位
4行间跳转
#G:挑战到第#行
G:最后一行
如:50G
末行模式下,直接给出行号即可
四,翻屏
CTRL+f:向下翻屏
CTRL+b:向上翻一屏
ctrl+d:向下翻半屏
ctrl+u:向上翻半屏
x:删除光标所在字符
#x:上传光标所在处及向后的共#个字符
六,删除命令:d
d命令更跳转命令组合使用
#dw,#de,#db
d$
dd:删除光标所在行
#dd:删除包括当前光标所在行在内的#行
Startadd,Endadd
末行模式
如1,8d
:.,+5d
:.,100d
删除的内容会保存在缓冲区中,
.:表示当前行
$:最后一行
+#:当前和向下#行
$-3:
粘贴命令p
p:如果删除或复制为整行内容,则粘贴到光标的下方,如果复制或删除的内容为非整行,则粘贴到光标所在行的 后面
P:如果删除或复制为整行内容,则粘贴到光标的上方,如果复制或删除的内容为非整行,则粘贴到光标所在行的 上面
+5d
八 复制功能y
用法同d一样
九 修改:先删除内容,再转换为输入模式
用法同d
如#cc
c$
十.替换 :r
6ra
删除单个字符x
R:替换模式 按ESC退出替换模式
十一.撤销编辑操作
u:撤销前次操作
连续u:可撤销此前的n次操作
#u:直接撤销最近#次操作
撤销最近一次撤销操作:Ctrl+r
十二.重复前一次 编辑操作
.
十三 可视化模式
v:按字符选取
V: 按矩形选取
十四 查找替换
/pattern
?pattern
n
N
十五.查找并替换
在末行模式下使用s命令