#!/bin/bashLOG_FILE="/path/to/log.txt"PROGRAM_NAME="my_program"TODAY=$(date +"%Y-%m-%d")# Check if program is runningif ps ax | grep -v grep | grep "$PROGRAM_NAME" >/dev/nullthen echo "$(date "+%Y-%m-%d %H:%M:%S"): $PROGRAM_NAME is running normally" >> "$LOG_FILE.$TODAY"else echo "$(date "+%Y-%m-%d %H:%M:%S"): $PROGRAM_NAME is not running" >> "$LOG_FILE.$TODAY"fi# Check if log file is older than 7 days and delete the oldest dayif test `find "$LOG_FILE"* -mtime +6`then rm -f "$LOG_FILE.$(date --date="7 days ago" +"%Y-%m-%d")"fi我的意思在这个脚本里面每天12点运行一次要直接加里面就可以了吗
时间: 2023-07-19 19:25:24 浏览: 45
是的,你可以将这个脚本保存在一个文件中然后将cron定时任务的配置直接入到脚本中。你需要在脚本的开头加入定时任务配置,即:
```
0 12 * * * /path/toyour_script.sh
```
其中,`/path/your_script.sh`是你保存脚本的。这样,当你运行这个脚本时,它就会被添加到crontab中,并且会在每天的0时12分执行一次。需要注意的是,如果你使用这种方式添加定时任务,可能会导致定时任务被重复添加,所以最好在运行脚本之前先检查一下crontab中是否已经存在相同的定时任务。
相关问题
if ps aux | grep "${program_name}" | grep -v grep > /dev/null; then echo "$(date +%Y-%m-%d\ %H:%M:%S) - ${program_name} is running normally." >> "${log_file}" else echo "$(date +%Y-%m-%d\ %H:%M:%S) - ${program_name} is not running. Please check it." >> "${log_file}" fi我要每天检查一次要怎么修改
您可以使用 Linux 中的 crontab 工具来实现每天定时执行该脚本。您可以使用以下步骤:
1. 编辑 crontab 文件,运行以下命令:`crontab -e`
2. 在文件末尾添加以下行,表示每天早上 9 点钟执行该脚本:`0 9 * * * /bin/bash /path/to/your/script.sh`
3. 保存并退出文件
注意,您需要将 `/path/to/your/script.sh` 替换为实际脚本的路径。另外,也可以根据需要修改执行时间。
2.指定在2023/04/15 09: 00将时间写入testmail.txt文件中 3.指定每天凌晨4: 00将该时间点之前的日志信息备份到个目录下 (/ar/log/messages ),备份后日志文件名显示格式logfileYY-MM-DD HH-MM
2. 可以使用以下命令将指定时间写入testmail.txt文件中:
```bash
echo "2023-04-15 09:00" > testmail.txt
```
3. 可以使用以下命令在每天凌晨4:00将该时间点之前的日志信息备份到指定目录下,并按照指定格式命名备份文件:
```bash
#!/bin/bash
LOG_DIR="/var/log/messages"
BACKUP_DIR="/backup/logs"
DATE=$(date +"%Y-%m-%d %H-%M")
# 备份日志文件,命名格式为 logfileYY-MM-DD HH-MM
cd $LOG_DIR && tar -czf "$BACKUP_DIR/logfile$DATE.tar.gz" $(find . -type f -name "*.log" -mtime +1)
# 删除1天前的日志文件
find $LOG_DIR -type f -name "*.log" -mtime +1 -delete
```
将上述代码保存为一个名为“log_backup.sh”的脚本文件,然后使用cron定时任务工具来设置每天执行一次该脚本:
```bash
crontab -e
```
在打开的编辑器中添加以下一行:
```bash
0 4 * * * /bin/bash /path/to/log_backup.sh
```
这将在每天凌晨4:00执行“log_backup.sh”脚本文件。