linux常用命令(4) --- Vim编辑器与Shell命令脚本
- 如何使用vim编辑器来编写文档、配置主机名称、网卡参数以及yum仓库;
- 通过vim编辑器将Linux命令放入合适的逻辑测试语句(if、for、while、case)后最终写出简单使用的shell脚本;
- 可以通过at命令或配置Crontab计划任务服务让系统自动按时工作,让日常工作更加高效自动化。
1、Vim文本编辑器
vim是linux操作系统默认安装的一款文本编辑器,vim是vi编辑器的升级版。
vim有三种模式:
命令模式、末行模式和编辑模式。
- 命令模式:控制光标移动,可对文本进行删除、复制、粘贴等工作;
- 输入模式:正常的文本录入;
- 末行模式:保存、退出与设置编辑环境。
命令模式中常用快捷键:
dd 删除(剪切)光标所在整行;
5dd 删除(剪切)从光标处开始的5行;
yy 复制光标所在整行;
5yy 复制从光标处开始的5行;
p 将之前删除或复制过的数据粘贴到光标后;
/ 字符串 在文本中从上至下搜索该字符串;
? 字符串 在文本中至下而上搜索该字符串;
n 显示搜索命令定位到的下一个字符串;
N 显示搜索命令定位到的上一个字符串;
u 撤销上一步操作
末行模式中常用命令:
:w 保存
:q 退出
:q! 强制退出(放弃对文本的修改)
:wq! 强化保存退出
:set nu 显示行号
:set nonu 不显示行号
:命令 执行该命令
:整数 跳转至该行
- 修改主机名称
修改 /etc/hostname文件。
2、shell脚本
- 查看系统中所有可用的shell解释器
cat /etc/shells
- 查看当前的shell解释器
echo $SHELL
1)、编写简单的脚本:
#!/bin/bash #for example by billy pwd
- 接收用户参数
格式:命令名 参数1 参数2 ...
SHELL预定义变量:
$0 当前执行shell脚本的程序名
$1-9,${10},${11}... 参数的位置变量
$# 一共有多少个参数
$* 所有位置变量的值
$? 判断上一条命令是否执行成功,0为成功,非0为失败。
2)、判断用户的参数
测试语句格式为:
[ 条件表达式 ]
细分测试语句有:
文件测试、逻辑测试、整数值比较、字符串比较
- 文件测试:
[ 操作符 文件或目录名 ]
操作符:
-d 测试是否为目录 -e 测试文件或目录是否存在 -f 判断是否为文件 -r 测试当前用户是否有权限读取 -w 测试当前用户是否有权限写入 -x 测试当前用户是否有权限执行
例如:
测试 /opt/test 是否为目录:
[ -d /opt/test ]
显示上一条命令的返回值:
echo $?
- 逻辑测试
格式:
[ 表达式1 ] 操作符 [ 表达式2 ]
操作符:
&& 逻辑与 || 逻辑或 ! 逻辑否
例如:若当前用户不是root,则输出user
[ $USER != root ] && echo "user"
- 整数值比较
格式:
[ 整数1 操作符 整数2 ]
操作符:
-eq 等于 -ne 不等于 -gt 大于 -lt 小于 -le 小于等于 -ge 大于等于
- 字符串比较
格式:
[ 字符串1 操作符 字符串2 ]
操作符:
= 比较字符串内容是否相同 != 比较字符串内容是否不同 -z 判断字符串内容是否为空