내 목표는 .log
24 시간 이상 전에 마지막으로 액세스했으며 필요한 텍스트를 포함하는 확장자가있는 모든 텍스트 파일을 찾는 것입니다.
내가 이미 시도한 것은 다음과 같습니다.
find / *.log -mtime +1 -print | grep "next" *.log
그러나 이것은 작동하지 않습니다.
질문 : 위에서 설명한 목표를 어떻게 달성 할 수 있습니까?
find
표현 을 수정하는 방법이 있습니까?
명령의 문제는 find 명령의 출력에서 grep을 실행하고 있다는 것입니다. 즉, 내용이 아닌 파일 이름에서 실행 중임을 의미합니다 (실제로는 * .log가 끝에 있으므로 실행합니다). 모든 * .log 파일에서 find 명령이 찾은 내용을 완전히 무시 함). 또한 .log 파일 만 필터링하려면 -name이 필요합니다.
find의 -exec 플래그를 사용하여 찾기 기준과 일치하는 각 파일에서 명령을 실행할 수 있습니다.
find / -name "*.log" -mtime +1 -exec grep 'next' \{};
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다