bash - 使用 Bash 实现自动化
问题描述
我们总共有 168 个子目录,所有子目录都以 doc_t扩展名结尾,在这些子目录下会有一些文件 std_doc_ _t.lst、PA_doc_*_t_output。
所以我需要检查所有这些子目录,report.rpt 中是否有任何看不见的模块为此我创建了一个小脚本,如下所示:
#!/bin/bash
for d in *_t;
do
echo "$d"
cat $d/PA_*_output/report.rpt | grep "Unseen Module"
echo ""
done
上述脚本的输出是:
doc_txa1_t
Number of Unseen Modules = 4
smro 1 Unseen Module ( 1 )
mapo_HDN 1 Unseen Module ( 1 )
trms7_cpo 1 Unseen Module ( 1 )
overlay 1 Unseen Module ( 1 )
Unseen Modules:
Definition : Unseen Module (line 1)
Definition : Unseen Module (line 1)
doc_fuse_t
Number of Unseen Modules = 1
Unresolved Modules:
TEF07HD18_PH_OVERLAY 4 Unseen Module ( 1 )
Unseen Modules:
Definition : Unseen Module (line 1)
现在我需要在此路径中搜索这些看不见的模块(smro、mapo_HDN、trms7_cpo、overlay、TEF07HD18_PH_OVERLAY),/proj/history/Unseen_Modules
如果这些可用,那么我们需要在此文件 std_doc_*_t.lst 中添加以下路径,该路径在所有子目录中可用,如下所示:
/proj/history/Unseen_Modules/TEF07HD18_PH_OVERLAY
/proj/history/Unseen_Modules/smro
/proj/history/Unseen_Modules/mapo_HDN
/proj/history/Unseen_Modules/trms7_cpo
/proj/history/Unseen_Modules/overlay
在上面的 bash 脚本中,任何人都可以帮助我在对 Unseen 模块进行 grep 之后如何执行此操作,以及我需要如何在此路径 /proj/history/Unseen_Modules/ 中搜索这些模块。
我试过这个:
#!/bin/bash
path = /proj/history/Unseen_Modules
for d in *_t;
do
echo "$d"
cat $d/PA_*_output/report.rpt | grep "Unseen Module"
done
我被困在如何在 $path 中搜索这些模块。
解决方案
推荐阅读
- jspdf - jsPDF 错误 - vFS (VueJs) 中不存在字体
- amazon-web-services - 从 JSON 帐号数组构建 AWS IAM 策略
- apache-kafka-connect - Kafka连接运行速度非常慢并抛出间歇性错误
- angular - 在 [routerlink] 中传递一个枚举:Angular 7
- r - 在R中绘制漏斗图
- expo - 使用 Expo Cli 为 React Native 设置环境
- windows - 使用批处理查找今天发生的关键字
- perl - 如何使这个 perl 代码片段也适用于 MySQL 8.0?
- c# - Unity 中缺少 photonServiceSettings 并且无法使用 photon lib
- android - Exoplayer cast 实现在 2019 年 7 月工作,但在本月(2019 年 10 月)没有更改任何代码就无法工作,有人知道发生了什么吗?