shell里面写tail -f查看实时日志的命令,把过滤出来的日志信息返回由于时间不确定可以人为控制是否停止怎么写shell,通过传入参数设置什么时候停止吗时间不确定

您可以编写一个 shell 脚本,其中使用 tail -f 命令查看实时日志,并在特定条件下停止查看日志。以下是一个示例脚本,它将一直监听日志,直到收到用户输入命令:

#!/bin/bash

# 通过参数传入日志文件路径
log_file=$1

# 函数,监听日志并过滤
tail_logs() {
    tail -f "$log_file" | grep -E "连接失败"
}

# 启动监听日志的函数
tail_logs &

# 获取监听日志的进程 ID
tail_pid=$!

# 等待用户输入命令
echo "正在监听日志,请按下 Ctrl+C 停止监听"
read -r -d '' _

# 当用户输入命令后,停止监听日志
kill "$tail_pid"

在这个脚本中,我们首先定义了一个名为 tail_logs 的函数,它使用 tail -f 命令监听日志文件,并通过 grep 过滤出包含 "连接失败" 的行。然后,我们在后台启动了这个函数,使它在后台持续运行。接着,我们获取了监听日志函数的进程 ID,并使用 read 命令等待用户的输入。最后,当用户输入命令后,我们通过 kill 命令停止了监听日志的进程。

您可以通过将日志文件路径作为参数传递给这个脚本来使用它,例如:

bash./watch_log.sh /var/log/mylog.log 

请注意,这个脚本中停止监听日志的条件是用户手动输入命令,您可以根据实际需求修改停止条件。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值