vim
vim +10 直接跳到第10行
i 输入信息
I跳到行首
A跳到行尾
o当前下面重新开启一行
O当前上面重新开启一行
w f2 另存为
w!强行覆盖
r 后面跟路径 可以读取别的文件加进来
:!命令 可以直接出执行结果
:r!+路径 文件 直接写入文档中
:s 搜索 :%s/xyz/&er/g
扩展模式:
:q 退出
:q! 强制退出,丢弃做出的修改
:wq 保存退出
:x 保存退出
命令模式
ZZ: 保存退出
ZQ:不保存退出
命令模式 –> 插入模式
i: insert, 在光标所在处输入
I:在当前光标所在行的行首输入
a: append, 在光标所在处后面输入
A:在当前光标所在行的行尾输入
o: 在当前光标所在行的下方打开一个新行
O:在当前光标所在行的上方打开一个新行
命令用反向单引号
“$name”加” ” 保留格式
echo $$ 子进程
echo $PPID父进程
export全局变量 name=
unset name 删除
readonly name =mage 常亮
()一次性写法
{ } 组合命令写法 不是一次
echo $? 查看命令对错 0为对 非0错
sleep 100 休眠100秒
x=10 y=20 z=$x+$y let z=$x+$y 运算
变量要加双引号
脚本中用{}
bash -n 检查语法对错 语法错误不会执行下去 syntax error:xunexpected end of file
bashi -n 能检查语法对错
-x 跟踪调试
name=zzz echo $name 变量 显示的字符串
name=`hostname` echo$name 反向单引号可以生成命令
name加“”号 可以保留文件里面的内容格式不变
echo $$ 进程编号
echo ¥PPID 父进程编号
bash 开启一层子进程 exit退出
局部变量工作范围 只能在当前shell有效
全局变量 export把普通变量变成环境变量
unset 删除变量
()一次性命令
{;}两边加空格 不开启shell 它会影响当前环境 他们的共同点都是把括号里的多个命令统一执行
shift 向左移位 可以加数字
echo $?查看命令是否成功 0成功 其他失败
批量对多个命令赋值 <<<
$*参数
$#几个字符串
basename $0 脚本名字
数字运算
let 1.z=10 x20 let 2.z=$x+$y 3.echo $z
0&0=0
0&1=0
1&0=0
1&1=1
0|0=0
0|1=1
1|0=1
1|1=1
x=haha;y=haha;[ “$x” = “$y” ] && echo equal || echo no equal 判断x=y的话执行 equal x不=y 执行no equal
数字用 -eq 比较
ge大于谁
^亦或
同性相斥 异性相吸
echo -e “\033[44;37;5m over \033[0m” 颜色代码
1:%s/^/# 给1前面加#号
脚本不支持别名
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96186