shell脚本grep变量,没有返回结果!

figodxp 2014-01-06 01:42:48
cat /home/ww/result/ps.txt | while read line;
do
a=$(($a+1));
echo $a >> /home/ww/result/result.txt
echo $line |tee -a /home/ww/result/result.txt
grep -r $line /home/ww/work/code |tee -a /home/ww/result/result.txt
done

上边脚本中,先读取ps中的文件内容,然后在循环中读取每一行的内容到line中,用line的内容在code目录下grep。

现在问题是,line里面的内容是ok的,但是用grep -r $line /home/ww/work/code |tee -a /home/ww/result/result.txt这一句话,在code目录下找不到$line里边东西。 请大家有了解这个的么?
...全文
666 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ljc007 2014-01-06
  • 打赏
  • 举报
回复
exec 3</home/ww/result/ps.txt
while read line <&3; do
    a=$(($a+1));
    echo $a >> /home/ww/result/result.txt
    echo $line |tee -a /home/ww/result/result.txt
    grep -r $line /home/ww/work/code |tee -a /home/ww/result/result.txt
exec 3<&-
figodxp 2014-01-06
  • 打赏
  • 举报
回复
引用 1 楼 ljc007 的回复:
while read line; do
    a=$(($a+1));
    echo $a >> /home/ww/result/result.txt
    echo $line |tee -a /home/ww/result/result.txt
    grep -r $line /home/ww/work/code |tee -a /home/ww/result/result.txt
done < /home/ww/result/ps.txt
好像还是不行,一样的效果
ljc007 2014-01-06
  • 打赏
  • 举报
回复
while read line; do
    a=$(($a+1));
    echo $a >> /home/ww/result/result.txt
    echo $line |tee -a /home/ww/result/result.txt
    grep -r $line /home/ww/work/code |tee -a /home/ww/result/result.txt
done < /home/ww/result/ps.txt

427

社区成员

发帖
与我相关
我的任务
社区描述
非技术问题的乐园
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧