많은 파일이있는 디렉토리에서 알 수없는 파일의 패턴을 grep하려고합니다. 내가 그 작업이 너무 많은 대역폭을 소비하기 때문에 직접 그렙를 사용할 수없는 파일의 매우 큰 폴더에 파일을 찾고 있어요 때문에bash는 grep을 사용하여 find를 출력합니다.
$ grep 0RY7HYLA in ./*8017*/*diag*
: 나는 일반적으로 다음과 같은 코드를 실행하는 것입니다. grep과 함께 find 명령을 사용해야합니다. 나는 즉
find ./*8017*/*diag* -maxdepth 3 -type f -name output_log -exec egrep -l '0RY7HYLA' {} \; | grep 0RY7HYLA
위의 코드 즉이 코드를 실행로부터 출력이없는 작동하지 않습니다 grep 명령에 파이프로 입력으로 find 명령의 출력을 사투를 벌인거야. 파이프 앞의 코드 만 실행하면 파일과 디렉토리가 출력되지만 grep은 출력되지 않습니다.
if find ./*8017*/*diag* -maxdepth 3 -type f -name output_log -exec egrep -l '0RY7HYLA' {} \; ; then grep 0RY7HYLA ???????? ; fi
이 행할 :
둘째 나는, 조건문이 넣어 뭔가를해야합니까?
원하는 출력은 무엇입니까? 두 줄과 일치하는 줄을 인쇄하려고합니까? –
"위의 코드는 작동하지 않습니다." - 왜 그렇게 말하니? 예기치 않은 결과가 반환되었거나 예상 한 결과가 반환되지 않았습니까? 아니면 오류가 표시되었을 수 있습니까? – Aaron
나는 그 진술에 더 나은 설명을 추가했다. – stevo