繁体   English   中英

如何检查linux中的日期是否更改

[英]How to Check whether the date changed in linux

我写了一个脚本来每天捕获 ngrep 日志。 但是当日期更改时,它不会自动创建文件。

#!/bin/bash

month=$( date +%B )
mkdir -p /home/log/$month

NOW=$(date '+%Y%m%d')
LOGFILE1="/home/log/$month/5110_$NOW.txt"
LOGFILE2="/home/log/$month/5150_$NOW.txt"
LOGFILE3="/home/log/$month/5160_$NOW.txt"

while true
do
  ngrep -t -q -d any -W byline port 5110 >> $LOGFILE1 &
  ngrep -t -q -d any -W byline port 5150 >> $LOGFILE2 &
  ngrep -t -q -d any -W byline port 5160 >> $LOGFILE3
  exec bash
  sleep 2
done

请帮忙。

谢谢

您必须将变量定义移动到 while 循环中才能发生这种情况。

#!/bin/bash
while true
do    
month=$( date +%B )
mkdir -p /home/log/$month


NOW=$(date '+%Y%m%d')
LOGFILE1="/home/log/$month/5110_$NOW.txt"
LOGFILE2="/home/log/$month/5150_$NOW.txt"
LOGFILE3="/home/log/$month/5160_$NOW.txt"

ngrep -t -q -d any -W byline port 5110 >> $LOGFILE1 &
ngrep -t -q -d any -W byline port 5150 >> $LOGFILE2 &
ngrep -t -q -d any -W byline port 5160 >> $LOGFILE3
exec bash
sleep 2
done

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM