1.总结vim命令行模式常见快捷方式,以及vim查找,替换的方法
vim打开文本编辑时默认进去到命令模式,即对文本不能直接编辑,但可对文本进行复制,粘贴剪切,跳转,
按x可以剪切当前光标所在位置字符然后p可以粘贴在光标移动的位置后面
w可以在每行单词中跳转 ,e在单词末尾跳转
gg可直接跳转至第一行行首,G跳转至文本末尾行行首 numgg指定跳转的行数
yy可以复制一行 numyy复制指定的行 p粘贴在光标所在位置下一行, P粘贴到光标位置上一行
i,a,o跳转至编辑模式 i移动至光标位置前一列进行编辑,a为后一列,o为下一行 esc键切换为命令模式
在命令模式中输入冒号: 可以进入扩展模式,扩展模式中常见操作 q 为退出 q!不保存强制退出 w为保存不退出 wq 保存退出 。w filename 跟文件名可以另存为新文件而不退出
r filename 读入别的文件附加在前文件之上
!command 叹号后面可以跟命令
可以打开别的文件,如果看完还可以敲回车返回
输入数字可以指定跳转的行数,以及可以使用正则表达式匹配行进行搜索替换
搜索,以及替换
可以使用普通模式替换,也可使用正则表达式匹配替换
查找单词为root的行
按模式搜索 ,格式 / /, / /d,y,前面对斜杠中的字符 到后面对斜杠的字符结尾,后面d表示删除
查找以root开头的到最后一个root 进行删除
按模式搜索
搜索替换格式 s/搜索模式/替换字符/g
搜索到nobody替换成
搜索到所有以#号开头的行替换为空即为删除
将开头的#号去掉
2、总结脚本中运算符、逻辑运算以及用法
bash中的运算符几种常见格式 +,-,*,/ %取余数 **乘方
let var=算数表达式
将计算好的数字赋值给avar=$[算数表达式]
用中括号括起来的算术表达式var=$((算数表达式))
可以将赋值过的两个变量做计算echo ‘算数表达式’ | bc
用echo回显之后作为bc命令的标准输入逻辑运算
命令结果返回tree,和false,linux中命令执行结果为0时正确,为1-255为错误
三种逻辑运算 与,或,非
与
1与1 = 1,1与0 = 0,0与 1 = 0,0与 0 = 0 可以表示两个命令比较测试两个都是正确返回值才是true 有一个不是返回值都是false
或
1与 1= 1 1与0 = 1 0与 1 = 1 0与 0 = 0 和与运算相反,只要有一个返回为true结果就为true,两个都为false时才返回false
非
非1 =0 非0 =1 取反操作。true变为false ,false为true
与或非常常结合条件测试命令来执行,如 前面的命令执行成功或失败。后面触发与或命令继续执行后续命令
&&dkdk继续执行下一条命令 ||短路或,如果前面的命令执行不成功则执行
先查找用户是否存在,若存在则执行echo命令显示hello 若不存在,则创建这个用户
判断字符串是否为空,为空打印true 非空打印 false
!非,可以理解为取反,将变量为不是空 变为空,进而执行返回true
条件测试的参数及用法
对数字比较测试,文件权限测试,文件存在测试
测试变量a是否为空-a(在测试中间加-a参数表示并且。-o表示或者)并且是否为数字
逻辑运算常用于脚本中用来判断某个变量是否存在或者值是什么。然后后面接上命令。
如判断用户。是否存在,存在则不做动作。不存在则创建,或者判断文件是否存在
3、编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到 /root/etcYYYY-mm-dd中
#!/bin/bash
\cp -a /etc/ /root/etc`date +%F`
4、编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统
禁止普通用户登录脚本
#!/bin/bash
sed -i -r 's@(.*[0-9]{4}.*:).*@\1/sbin/nologin@' /etc/passwd
#!/bin/bash
启用普通用户登录脚本
#!/bin/bash
sed -i -r 's@(.*[0-9]{4}.*:).*@\1/bin/bash@' /etc/passwd
5、编写脚本/root/bin/disk.sh,显示当前硬盘分区中空间利用率最大的值
#!/bin/bash
df -h | grep "^/dev/sd.*" | tr -s " " "%" | cut -d% -f 5 | sort -nr | head -1
网友评论