1234567891011121314151617 |
- #!/bin/bash
- # 进入指定目录
- cd "/logs/$1"
- # 获取最新修改的文件
- latest_file=$(ls -t | head -n1)
- # 查找入参2所在行
- matching_line=$(grep -n "$2" "$latest_file" | head -n1)
- # 获取匹配行号和文件名
- line_number=$(echo "$matching_line" | cut -d ":" -f 1)
- # file_name=$(echo "$matching_line" | cut -d ":" -f 2)
- # 查找前30行和后200行数据
- awk -v start=$((line_number-30)) -v end=$((line_number+200)) 'NR>=start && NR<=end' "$latest_file"
|