Linux 第四天 vim shell

案例一:配置主机名称:
Vim /etc/hostname

部署网卡配置:
Rhel 5/6 网卡配置文前缀eth0 eth1
RHEL 7 ifcfg-ens1

设备类型:TYPE=Ethernet
地址分配模式:BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=86af6122-7cab-42c5-a04c-7a625a39052c
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.0.240
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS=114.114.114.114
DNS1=202.96.134.133

重启 systemctl restart network --- /etc/init.d/network

Yum 仓库的配置:
使用yum仓库配置前提----必须挂载 、具备本地yum仓库文件
Yum 仓库

Vim /etc/yum.repos.d/y.repo
[y]
name=y user to use local yum
baseurl=file://mnt
Enabled=1 //1为可用 0 为禁用
gpgcheck=1
gpgkey=file://mnt/RPM-GPG-KEY-redhet-release 验证公钥

yum clean all 清空、刷新缓存
yum makecache 为当前提供的源提供缓存

二、shell 编写脚本
默认版本---bash 版本----所有Linux下都通用的
默认编写 shell 脚本规范:
脚本命名:以数字 、字母、下划线开头允许,一般以脚本用处为命名
脚本内容:第一行 指定shell 解释器版本-----#!/bin/bash
第二行----第四行 :开发时间、管理员邮箱、脚本用途(详细)
shell 命令工作模式两种的:br/>交互模式
批处理模式
Auto_exec.sh
#!/bin/bash
#2018/11/19
#[email protected]
#used to test
ls -l
执行脚本 三种模式
1.bash /sh命令 执行---第一行使用强调无用的
2.赋予文件执行权限 +x

  1. 将脚本放到PATH路径下 (完全不建议的)

    chmod +x auto_exec.sh 添加执行权限

$0----当前shell脚本名称
$#-----对应总共多少参数
$n-----除去0处的正整数 第N个参数
$?-------表示第一次执行结果0 正确 其它数字 错误 echo $?
$*-------表示每个参数是什么
“ ”----变量具备原有属性
‘ ’---将变量转义为纯字符串

判断用户的参数:
两种判断方式:
test 表达式
[表达式 ]------使用[]两边必须具备空格的!!!
文件测试:是否存在、文件类型:
-d 目录为,则为真
-f 为常规文件 则为真
-l 为符号链接,则为真
-r 可读,则为真
-w 可写,则为真
-x 可执行,则为真
-s 文件名长度不为0 ,则为真
-h 文件是软链接,则为真
-e 存在,则为真
-z 判断字符串内容是否为空
逻辑测试:与,或,非
与&&
或||
非!
整数值比较:
不能使用+-/*
-eq等于
-gt大于
-ne不等于
-ge大于等于
-lt小于
-le 小于等于

[root@localhost ~]# free -m | grep Mem
Mem: 1823 152 1229 8 441 1426

字符串

!=
-z 判断内容是否为空
Shell编程的流控语句:
if条件测试语句

For 条件循环语句

While 条件循环语句

Find gred sed awk

[root@localhost ~]# [ -d allen ]
[root@localhost ~]# echo $?
1
[root@localhost ~]#

Case 条件测试语句 ----以语言switch 语句,比if 判断更加精准

计划任务:
一次性:今晚11:00 启动web
at 22:00
at>systemctl restart httpd
at>ls
at><EOT>
at -l 查看命令
删除 atrm (数字)
周期性: 每天晚上10:00 重启动web
crond
crontab -e -l -r -u
分 时 日 月 星 命令格式
命令格式尽量使用绝对路径 (从/开始 ) which cp /usr/bin/cp
0 7 都表示周末
日期和星期无法同时使用
案例:例如每周1\3\5 

[root@localhost ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
Linux 第四天  vim   shell

猜你喜欢

转载自blog.51cto.com/2326749/2322290