파일이 글꼴 파일인지 테스트하는 방법

파일이 글꼴 파일인지 테스트하는 방법

다양한 소스에서 자동으로 저장된 수천 개의 웹페이지가 있습니다. 많은 웹 페이지에는 *.woff, *.eot, *.ttf 및 *.svg와 같은 파일에 글꼴이 포함되어 있습니다. 크기를 줄이고 모든 글꼴 파일을 삭제하고 싶습니다. 파일이 글꼴에 적합한지 테스트하는 방법은 무엇입니까? 특히 *svg 파일은 혼란 스러울 find . -type f -name *woff수 있습니다. *svg 파일은 xxxwebfontsxxx.svg와 같은 글꼴 파일이거나 정보가 풍부한 이미지일 수 있습니다.

파일을 직접 테스트할 수 없으면 어떤 확장자를 제거해야 합니까? 내가 아는 글꼴 파일 확장자는 *otf, *ttf, *eot, *woff 및 글꼴일 수도 있고 아닐 수도 있는 일부 *svg입니다. 처음 4개 유형의 파일을 삭제한 후 저장하시겠습니까?

답변1

file파일 형식을 추측할 수 있는(아주 정확하지만 항상 완벽하지는 않음) 명령이 있습니다 . 이 명령을 사용하는 한 가지 방법은 다음과 같습니다.

find your_web_pages_directory -type f -name "*.*" -print0 |
  xargs -0 file |
    awk 'BEGIN{FS=": +"}$2~/[Ff]ont/{print $1}' |
      xargs rm --

find명령은 확장자가 있는 일반 파일을 찾고(원하는 경우 확장자를 추가로 제한할 수 있음), 프로그램은 awk이전 추측과 일치하여 file파일 이름을 인쇄하고 마지막으로 결과가 제거됩니다. "your_web_pages_directory"의 문서에 따르면 파이프의 및 일부를 find | xargs추가하기 전에 먼저 파이프의 출력을 확인하는 것이 좋습니다 .awkrm

참고: 이 코드는 file원하는 파일의 "글꼴" 또는 "글꼴"과 같은 내용이 보고될 것이라고 가정합니다. 실제 진단 문자열이 아닌 경우 그에 따라 변경해야 합니다. 검색하려는 유형의 파일에 대해 몇 가지 테스트를 수행하십시오.

관련 정보