我将从" createxxxx.out"
获取两个或多个随机文件名的文件这两个文件中的任何一个都可以包含一个名为失败的字符串。
我必须搜索那个"失败" string和Fetch两个变量(Variable1,Variable2)存在于同一个文件中(包含String' 失败'的文件)并在另一个文件中打印这两个变量(这里我是尝试在 Error.log 文件中打印它。
我已经尝试了以下脚本,它不起作用:
if grep -q "Fail" create_*;
then
grep 'Variable1\|Variable2' create_* > Error.log
echo -e "Creation Failed"
fi
答案 0 :(得分:0)
#!/bin/sh
#use 'egrep' for multiple keyword search
#this script will search for fail/Fail/fAiL words
#from all files starts with 'create'
#and save in fileanme_error.log if fail/variable(s) found
#
# 'egrep -i' - option also can be used for variable search
# with ignoring case sensitivity
for file in $(ls -1 create_*)
do
grep -qi 'fail' $file
if [ $? -eq 0 ];then
egrep 'Variable1|Variable2' $file > $file_Error.log
echo -e "Creation Failed for file: $file"
fi
done
此行将保存唯一的关键字:
egrep 'Variable1|Variable2' $file|sort -u > $file_Error.log