全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

IP归属甄别会员请立即修改密码
查看: 838|回复: 14
打印 上一主题 下一主题

请教MJJ大佬Linux的shell写法

[复制链接]
跳转到指定楼层
1#
发表于 2021-2-18 22:51:11 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
15#
发表于 2021-2-18 23:47:03 | 只看该作者
crazywings 发表于 2021-2-18 23:34
其实你可以直接用||啊
ping 192.168.1.123 -c 1 -w 3 || reboot
&&是前成功执行,||是前失败执行,所以你不 ...

厉害了兄弟,他说要脚本,我就只往脚本上想的
忘记了不用写个文件直接在crontab里执行就好了
学到了学到了哈哈
14#
 楼主| 发表于 2021-2-18 23:43:07 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
13#
 楼主| 发表于 2021-2-18 23:41:31 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
12#
 楼主| 发表于 2021-2-18 23:36:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
11#
发表于 2021-2-18 23:34:16 | 只看该作者
其实你可以直接用||啊
ping 192.168.1.123 -c 1 -w 3 || reboot
&&是前成功执行,||是前失败执行,所以你不需要sh,只要||就行了
10#
发表于 2021-2-18 23:21:00 | 只看该作者
判官 发表于 2021-2-18 23:18
没太看懂  我就是要ping 192.168.0.1   通就完事  不通就reboot

我理解错了,我以为是 Ping 的 IP 要是不一致就重启,思路差不多,if 判断。
9#
发表于 2021-2-18 23:20:33 | 只看该作者
------------------------------脚本(假设你把它保存在/root/test.sh)----------------------------------
#!/bin/bash
ping -c 1 192.168.0.1 > /dev/null
if [ ! $? -eq 0 ]
then
    reboot
fi
------------------------------------------------------------
定时命令:
*/30 * * * * bash /root/test.sh
(crontab -e这个命令)
----------------------------------------------------------
就ping 了一次,想多ping几次把-c 后面的1改成次数
默认ping的结果不显示,要显示把> /dev/null 去掉
over
8#
 楼主| 发表于 2021-2-18 23:18:10 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
7#
发表于 2021-2-18 23:11:40 | 只看该作者
本帖最后由 Cee 于 2021-2-18 23:13 编辑
判官 发表于 2021-2-18 22:55
会写定时重启  但是不会写PING 怎么判断


假设已经获取到当前 Ping IP:
  1. if [[ -f /tmp/ping_ip ]] ; then
  2.   old_ip=$(cat /tmp/ping_ip)
  3. else
  4.   echo "$new_ip" > /tmp/ping_ip
  5. fi
复制代码

然后再配合你的定时重启。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-12-18 11:54 , Processed in 0.133145 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表