vim编译器
vim之所以得道大家的认可,是因为它设置了三种模式
- 命令模式:控制鼠标,对文本进行复制,粘贴,查找等工作
- 输入模式:正常得输入
- 末行模式:保存或退出文档,以及设置编辑环境
vim中常用的命令
dd 删除(剪切)光标所在行
5dd 删除(剪切)光标处开始5行
yy 复制光标所在整行
5yy 复制光标处开始的5行
n 显示搜索命令定到的下一个字符串
N 显示搜索命令定到的上一个字符串
u 撤销上一步的操作
p 将之前dd或yy粘贴到光标后面
末行模式中可用的命令
:w 保存
:q 退出
:q!强制退出
:wq! 强制保存退出
:set nu 显示行号
:set nonu 不显示行号
:命令 执行该命令
:整数 跳转到该行
:s/one/two 将当前光标所在行的第一个one替换成two
:s/one/two/g 将当前光标所在行的所有one替换成two
:%s/one/two/g将全文所有的one替换成two
?字符串 在文本中从下至上搜索该字符串
/字符串 在文本中从上至下搜索该字符串
配置主机名称
第一步:使用vim编译器修改“/etc/hostname”
第二步修改
第三步:保存退出
编写Shell脚本
Shell终端解释器:人与计算机之间的“翻译官”
Shell脚本的名称可以任意(但是为了被误认普通文件,建议加上.sh)
这是一个建立用户的脚本-
```-#!/bin/bash j脚本声明,来告诉系统使用哪种shel解释器来执行脚本
read -p "Enter The user password :' PASSWD
for UNMAE in ' cat users.txt'
do
id $UNAME &> /dev/null
if [ $? -eq o ]
then
echo "Already exists"
else
useradd $UNAME &> /dev/null
echo "$PASSWD" | passwd --stdin $UNAME &> /dev/null
if [ $? -eq 0 ]
then
useradd $UNAME &> /dev/null
echo "$PASSWD" | passwd --stdin $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "$UNAME,Creat success"
else
echo "$UNAME,Creat failure"
fi
fi
done
判断用户参数
文件测试所用的参数
-d 测试文件是否为目录型
-e 测试文件是否存在
-f 判断是否为一般文件
-r 测试用户是否有权限读取
-w测试用户是否有权限写入
-x 测试当前用户是否有权限执行
可用整数比较运算符
-eq 是否等于
-ne 是否不等于
-gt 是否大于
-lt 是否小于
-le 是否等于或小于
-ge是否等于或大于
常见的字符串比较运算符
= 比较字符串内容是否相同、
!= 比较字符串内容是否不同
-z 判断字符串内容是否为空
if条件测试语句
#!/bin/bash
ping -c 3 -i 0.2 -w 3 $1 &> /dev/null(/dev/null被称为Linux黑洞文件)
if【$? -eq 0】
then
echo“$1 online"
else
echo"$1 offline"
fi
判断范围
#!/bin/bash
read -p "Enter your score(0-100): " GRADE
if [ $GRADE -ge 85 ] && [ $GRADE -le 100 ] ; then
echo "$GRADE is Excellent"
elif [ $GRADE -ge 70 ] && [ $GRADE -le 84 ] ; then
echo "$GRADE is Pass"
if [$CRADE -gt 100 ] && [$GRADE -lt 0]
echo "erro"
else
echo "$GRADE is fail"
fi
while条件循环语句
#!/bin/bash
PRICE=$(expr $RANDOM % 1000)
TIMES=0
echo "the thing is,you thinking?"
while true
do
read -p "pleease input the price" INT
let TIMES++
if [ $INT -eq $PRICE ] ; then
echo "happy ,the price is $PRICE"
echo "you cat $TIMES chi"
exit 0
elif [$INT -gt $PRICE ] ; then
echo "hight"
else
echo "di"
fi
done
计划任务服务程序
在指定的时间段自动启用或停止某些服务或命令,从而实现运维的自动化、
用at命令实现这种功能,写出”at 时间“