You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何区分Shell脚本输出文件名并在两个文件中grep指定关键词

区分同时间启动脚本的输出文件并搜索关键词

一、给不同脚本生成唯一输出文件名

因为两个脚本启动时间戳相同,靠时间戳没法区分输出文件,最简单的方式是给每个脚本的输出文件加上专属标识,比如脚本名称、自定义后缀:

方案1:手动指定带脚本标识的文件名

直接修改重定向语句,给输出文件加专属后缀,直观好区分:

  • Shell脚本1修改为:
    Test1=`command 2>output_script1.txt`
    
  • Shell脚本2修改为:
    Test1=`command 2>output_script2.txt`
    

方案2:自动用脚本名生成文件名(适合多脚本场景)

如果后续还有更多脚本,不想逐个手动改文件名,可以用basename "$0"获取当前脚本名称,自动生成对应输出文件:

  • Shell脚本1修改为:
    # 获取脚本名(去掉.sh后缀)
    SCRIPT_NAME=$(basename "$0" .sh)
    Test1=`command 2>output_${SCRIPT_NAME}.txt`
    
  • Shell脚本2同理,运行后会自动生成output_Shell脚本1.txt和output_Shell脚本2.txt这类对应文件名,批量脚本也能轻松区分。

二、生成文件后搜索特定关键词

输出文件生成后,用grep命令就能快速搜索关键词:

  • 同时搜索两个文件,显示文件名和匹配内容:
    grep "你的目标关键词" output_script1.txt output_script2.txt
    
  • 分开搜索并单独展示结果(适合需要分别查看的场景):
    echo "脚本1的搜索结果:"
    grep "你的目标关键词" output_script1.txt
    echo -e "\n脚本2的搜索结果:"
    grep "你的目标关键词" output_script2.txt
    

内容的提问来源于stack exchange,提问作者Kingsters

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 13:44:51