python - shell脚本查找字符串并递归打印当前行和下一行

标签 python perl bash shell

我编写了一个小脚本,用于搜索字符串并打印当前行。但我对打印下一行有点困惑。我对 bash/perl/python 没问题

#!/bin/bash  

CURRENT_DIR=`pwd`
cnt=0

for dir in $(find $CURRENT_DIR -type d)
do
    for myFile in $dir/*  
    do 
        if [ -f "$myFile" ]; then
            cat $myFile | while myLine=`line`
            do
                allFile="$myLine"    
                if echo "$myLine" | grep -q $1 ; then 
                    echo "$myFile" "$allFile" ""
                fi  
                #echo 'expr $count+1'
                #echo   "$allFile"   ""
            done #LINE  
        fi
    done #FILE
done # DIRECTORY

最佳答案

如果您的 grep 是 GNU:

 grep -A1 pattern file

关于python - shell脚本查找字符串并递归打印当前行和下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12932298/

相关文章:

node.js - 通过脚本下载具有特定 Div 的图像

bash - 在终端中执行命令后如何 grep 查找特定文本?

python - 使用 python 的 pysftp 包,我在尝试上传文件时收到 OSError

python - 使用 *args 和指定的列表索引对列表求和

python - Jupyter + rpy2 输出到命令提示符而不是笔记本单元格

c++ - 如果子进程发出信号,Perl 会检测到 fork/exec 的错误退出代码

perl - 如何使用 AnyEvent::XMPP 获取聊天室中的用户 jabber Id?

bash - 如何使用 Bash 合并 Docker Compose 文件

bash - 如何将 SHELL 重新更改为默认 bash 而不是 zsh

python - 如何解决pygame闪烁问题