Windows를 사용하면서부터 저는 파일 시스템의 보관된 복사본과 시스템 및 데이터 드라이브의 아카이브를 대량으로 축적해 왔습니다. 가치가 없을 수도 있는 것은 모두 버리고, 증류해서 쓸모 있는 부분으로 만들려고 노력합니다.
위의 파일 묶음이 복사되는 동안 다시 스크롤하여 보존 드라이브에서 작업 드라이브로 이동하는 것을 보면 "좋은" 파일과 "쓸모 없는" 파일의 시작 목록이 있는 것 같지만, 거기에 있는지 궁금합니다. 신뢰할 수 있는 유형의 파일 목록(이전 Windows 환경의)은 쓸모가 없으므로 즉시 삭제해야 합니까?
수상자:(이 목록을 포괄적으로 만들려고 하면 엉망이 될 수 있다는 것을 알고 있으므로 실수로 망칠 수 있는 쓰레기로 둘러싸여 있지 않는 한 이 목록은 내가 찾고 있는 것이 아닙니다.)(편집: 유일한 방법이 매우 포괄적인 화이트리스트 기반 접근 방식이라면 그렇게 하십시오. 그렇지 않았으면 좋겠지만, 거지는 선택자가 될 수 없습니다... 대부분의 경우.)
*.tar.*, *.rar, *.zip
*.mp(e)g, *.avi, *.mkv, *.wmv, *.asf
실패자: (이것이 내가 정말로 원하는 것입니다)
*.exe, *.bat, *.dll, *.com, *.lnk
또한 예외가 있을 것이라는 것도 알고 있습니다. Wine에 무언가를 설치하는 데 사용되는 설치 프로그램 .exe 파일과 같습니다. 이 질문의 목적상 그러한 우려는 문제가 되지 않습니다. 문제의 모든 파일은 사본(사본, 어쩌면 더 많은 사본)이므로 제가 정말로 보관하고 싶은 설치 프로그램은 안전하고 쓰기 금지된 장소에 있을 것입니다.
답변1
오직 당신만이 당신이 필요로 하는 것/보유하고 싶은 것이 무엇인지 알고 있습니다. 그러나 다음과 같이 할 수 있습니다.어느 정도는 Windows 시스템 파일과 기타 설치된 프로그램 파일을 식별합니다.
가상 머신에 Windows와 이러한 프로그램을 다시 설치하고 두 개의 목록을 만듭니다.모두가상 머신의 파일 이름입니다.
VM에서 새로 설치된 시스템의 첫 번째 목록을 만듭니다.
dir /S /B /A-D C:\ >vmlist.1
VM에서 업데이트된 시스템의 두 번째 목록을 만듭니다.
dir /S /B /A-D C:\ >vmlist.2
*nix로 돌아가서 두 파일을 병합하고 중복된 줄을 제거합니다.
sort -u vmlist.1 vmlist.2 >vmlist
이제 목록은 다음과 같습니다(물론 더 길지만).
C:\name with 6 special chars [$.^|]
C:\Windows\System32\asr_fmt.exe
C:\Windows\System32\asr_ldm.exe
C:\Windows\System32\asr_pfu.exe
이제 목록을
regex
적합한 스키마 로 변환하세요.grep
sed -r 's/\\/\//g; s/[]$.^|[]/\\&/g; s/^[[:alpha:]]:/^.*/; s/$/$/' vmlist >vmlist.rex
정규식 목록은 다음과 같습니다.
^.*/name with 6 special chars \[\$\.\^\|\]$
^.*/Windows/System32/asr_fmt\.exe$
^.*/Windows/System32/asr_ldm\.exe$
^.*/Windows/System32/asr_pfu\.exe$
대상 아카이브 디렉터리에 포함된 파일 나열
find '/my/archive/dir' -type f >arclist
지금 하나 만들어하위 목록
arclisl
정규식 패턴과 일치하는 파일 에서 .<arclist grep -f vmlist.rex >arcmatches
arcmatches
일치하는 Windows 파일이 포함되어 있습니다. 확인하시고 만족스러우면 삭제하세요. 제거 명령입니다.<arcmatches xargs -d'\n' rm -v
답변2
아마도 정크를 제거하는 가장 쉬운 방법은 생성 날짜 또는 마지막 수정 날짜를 기반으로 하는 것입니다(어느 것이 더 나은지 실험해야 할 수도 있음). 시스템 설치 날짜를 시작점으로 사용하십시오.
파레토 원리에 따르면 간단한 필터로 원하는 결과의 80%를 얻을 수 있습니다.
(물론 이 목록을 이미 수집하기 시작한 흑백 목록과 결합할 수 있으며 결합해야 합니다.)
답변3
thumbs.db
내가 아는 한, 이 파일은 Unix 계열 시스템에서는 쓸모가 없습니다.
Windows 시스템에서 이미지의 축소판을 캐시하는 데 사용되는 (숨겨진) 파일입니다. 폴더의 이미지를 볼 때 각 이미지 폴더에는 자체 이미지가 있으므로 thumbs.db
이미지 폴더 수에 따라 하드 드라이브에 이러한 이미지가 꽤 많이 있을 수 있습니다.
모든 *nix가 썸네일을 어떻게 처리하는지 모르겠지만, 적어도 내 경우(Ubuntu/GNOME) 모든 썸네일은 기본적으로 한 곳에 저장됩니다. 내 홈 디렉터리의 폴더(like .thumbnails/
및 하위 폴더도 포함)입니다. 그래서 Windows에서 Linux로 옮겼을 때 이 파일을 모두 삭제했습니다..thumbnails/normal
.thumbnails/large
thumbs.db
답변4
C:/pagefile.sys
C:/의 루트 디렉터리에 있는 pagefile.sys는 더 이상 필요하지 않은 상당히 큰 파일이어야 합니다.
대부분의 경우 에뮬레이터, 가상 머신을 사용하지 않는 한 전체 Windows-Dir은 쓸모가 없습니다.
글꼴(적어도 *.ttf/*.TTF)은 예외일 수 있습니다.