用bash计算一天中发生多少次?

用bash计算一天中发生多少次?,bash,shell,Bash,Shell,我有一个脚本,可以在internet断开连接时自动连接调制解调器,并在断开连接时写入日志,我的脚本如下所示: #!/bin/bash DATE=`date +%d-%m-%Y_%H:%M:%S` echo -n $DATE >> /www/restart.log echo ' Internet terkoneksi ke server OpenVPN' >> /www/restart.log sleep 20 while [ true ] do if tail -

我有一个脚本,可以在internet断开连接时自动连接调制解调器,并在断开连接时写入日志,我的脚本如下所示:

#!/bin/bash
DATE=`date +%d-%m-%Y_%H:%M:%S`
echo -n $DATE >> /www/restart.log
echo ' Internet terkoneksi ke server OpenVPN' >> /www/restart.log
sleep 20
while [ true ]
do
    if tail -1 /www/vpn.log | grep 'Initialization Sequence Completed'
    then
        sleep 5
    else
        profile start > /dev/null 2>&1 &
        DATE=`date +%d-%m-%Y_%H:%M:%S`
        echo -n $DATE >> /www/restart.log
        echo ' Openvpn Disconnected. Koneksi internet direstart' >> /www/restart.log
        echo '---------------------------------------------------------------------------------------------------'      >> /www/restart.log
        rm /www/vpn.log
        break
    fi
done
05-01-2015_09:49:49 Internet terkoneksi ke server OpenVPN
05-01-2015_10:32:45 Openvpn Disconnected. Koneksi internet direstart
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
---------------------------------------------------------------------------------------------------
05-01-2015_11:28:46 Internet terkoneksi ke server OpenVPN
05-01-2015_09:49:49 Internet terkoneksi ke server OpenVPN
05-01-2015_10:32:45 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 6 times today
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 7 times today
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 8 times today
脚本在重新连接internet后终止(我有原因,请不要问我为什么),并在internet启动时再次运行。日志如下所示:

#!/bin/bash
DATE=`date +%d-%m-%Y_%H:%M:%S`
echo -n $DATE >> /www/restart.log
echo ' Internet terkoneksi ke server OpenVPN' >> /www/restart.log
sleep 20
while [ true ]
do
    if tail -1 /www/vpn.log | grep 'Initialization Sequence Completed'
    then
        sleep 5
    else
        profile start > /dev/null 2>&1 &
        DATE=`date +%d-%m-%Y_%H:%M:%S`
        echo -n $DATE >> /www/restart.log
        echo ' Openvpn Disconnected. Koneksi internet direstart' >> /www/restart.log
        echo '---------------------------------------------------------------------------------------------------'      >> /www/restart.log
        rm /www/vpn.log
        break
    fi
done
05-01-2015_09:49:49 Internet terkoneksi ke server OpenVPN
05-01-2015_10:32:45 Openvpn Disconnected. Koneksi internet direstart
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
---------------------------------------------------------------------------------------------------
05-01-2015_11:28:46 Internet terkoneksi ke server OpenVPN
05-01-2015_09:49:49 Internet terkoneksi ke server OpenVPN
05-01-2015_10:32:45 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 6 times today
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 7 times today
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 8 times today
我想计算一天内发生的重新连接次数,我希望日志文件如下所示:

#!/bin/bash
DATE=`date +%d-%m-%Y_%H:%M:%S`
echo -n $DATE >> /www/restart.log
echo ' Internet terkoneksi ke server OpenVPN' >> /www/restart.log
sleep 20
while [ true ]
do
    if tail -1 /www/vpn.log | grep 'Initialization Sequence Completed'
    then
        sleep 5
    else
        profile start > /dev/null 2>&1 &
        DATE=`date +%d-%m-%Y_%H:%M:%S`
        echo -n $DATE >> /www/restart.log
        echo ' Openvpn Disconnected. Koneksi internet direstart' >> /www/restart.log
        echo '---------------------------------------------------------------------------------------------------'      >> /www/restart.log
        rm /www/vpn.log
        break
    fi
done
05-01-2015_09:49:49 Internet terkoneksi ke server OpenVPN
05-01-2015_10:32:45 Openvpn Disconnected. Koneksi internet direstart
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
---------------------------------------------------------------------------------------------------
05-01-2015_11:28:46 Internet terkoneksi ke server OpenVPN
05-01-2015_09:49:49 Internet terkoneksi ke server OpenVPN
05-01-2015_10:32:45 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 6 times today
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 7 times today
---------------------------------------------------------------------------------------------------
05-01-2015_10:33:20 Internet terkoneksi ke server OpenVPN
05-01-2015_11:27:59 Openvpn Disconnected. Koneksi internet direstart
05-01-2015_10:32:59 Your internet has been reconnected for 8 times today

可能吗?请注意,我的脚本在重新连接调制解调器后被终止,并在internet启动时再次调用。我不希望我的脚本每天24小时运行。

保持日志文件干净,并创建一个单独的日志分析器脚本来计算每天的连接数会更有意义

cut -s -d_ -f1 reconnect.log | uniq -c

在现有日志文件上添加任何内容之前,请使用
grep
wc
。了解这些工具,了解如何根据日期进行过滤。
而[true]
恰好是出于巧合的原因才起作用的,但它并不像您想象的那样起作用。你的意思可能是
,而true则是
。。。哦,又是这样。很抱歉,你在这件事上是个傻瓜,如果你对我的帖子感到不安,就不要回答。^^当有人试图纠正你时,通常是为了帮助你学习。不要因此而生气顺便说一下,
while[true]
while[false]
在这里都会给出相同的结果<代码>为true时
为false时
结果会有所不同。别担心,我没有生气。对不起我的语言。