실제 파일은 삭제하지 않고 링크만 삭제하려면 어떻게 해야 하나요?

실제 파일은 삭제하지 않고 링크만 삭제하려면 어떻게 해야 하나요?

.svg 파일로 가득 찬 폴더가 있는데 그 중 일부는 실제 파일이고 다른 일부는 파일에 대한 링크일 뿐입니다. 모두 .svg 파일 확장자를 가지지만 실제 파일에는 "SVG 이미지"라는 레이블이 붙고 링크에는 "SVG 이미지 링크"라는 레이블이 붙습니다. 링크를 제거하고 싶지만 둘 다 .svg 파일 확장자를 갖고 있기 때문에 *.svg를 rm할 수 없습니다. 이렇게 하면 ls실제 파일과 심볼릭 링크가 서로 다른 색상으로 표시되므로 확실히 차이가 있습니다. 아직 수동으로 정렬해야 할 파일이 너무 많기 때문에 터미널 명령을 통해 이 작업을 수행할 수 있기를 원합니다.

답변1

cd /the/folder
find . -type l -name '*.svg' -print
# or
find . -type l -name '*.svg' -ls      # _not_ `-exec ls`

올바른 심볼릭 링크가 반환된 경우

find . -type l -name '*.svg' -delete

관련 정보