누락되었거나 오래된 서명이 있는 파일 찾기

누락되었거나 오래된 서명이 있는 파일 찾기

서명을 업데이트하려면 /bootfind(GNU findutils) 4.6.0을 사용하고 싶습니다.

반복해서 서명이 gpg와 일치하는지 확인할 수 있다는 것을 알고 있지만 동일한 디렉토리에서 find를 사용하는 방법을 알고 싶습니다. -newer어떻게든 현재 일치하는 패턴을 사용하여 file.img가 file보다 최신이 아닌지 테스트합니다. img.sig. 이것이 쉬운 일입니까?

즉 다음과 같습니다.

sigs=(`find /boot -type f -iname '*.sig'`)
for sig in ${sigs[@]}; do
  file=${sig%*.sig}
  find /boot -type f -name "$file" -newer /boot -type f -name "$sig"
done

답변1

결과가 있는 루프는 find일반적으로 다음으로 대체될 수 있습니다 find -exec.

이런 식으로 시도해 보세요.

find /boot -type f -iname '*.sig' \
    -exec sh -c 'find /boot -name "${1%.sig} -newer "$1"' sh {} \;

관련 정보