grep并找不到shell脚本

时间:2017-05-11 09:25:00

标签: linux shell grep find

我试图通过shell脚本从存储在目录中的一组文件中grep特定模式。但是,脚本会扫描文件,但它不会将结果提取给我。我有5个文件,模式为finishing with status COMPLETE

以下是代码,请您帮忙解决问题

#!/bin/bash
dt=$(date --d='7 day ago' +'%Y%m%d')
countT=$("find /home/arun/file_status -type f  -name "product_feed_*stock*_${dt}*.out"  -exec grep "finishing with status COMPLETE" {} \;" | wc -l)
echo $countT
if [ $countT -eq 5 ]
then
   echo "Hello"
else
   echo "Hai"
fi

以下是错误:

  

find / home / arun / file_status -type f -name product_feed_stock_20170504 * .out -exec grep finishing:没有这样的文件或目录0 Hai

1 个答案:

答案 0 :(得分:1)

需要在find命令中删除引号。

#!/bin/bash

dt=$(date --d='7 day ago' +'%Y%m%d') 

countT=$(find /home/arun/file_status -type f -name "product_feed_stock_${dt}*.out" -exec grep "finishing with status COMPLETE" {} \;| wc -l) 

echo $countT 
if [ $countT -eq 5 ] 
then 
  echo "Hello" 
else 
  echo "Hai" 
fi