읽기 전용 드라이브에서 '?' 및 ':'과 같은 문자가 포함된 파일을 ntfs로 복사하는 방법은 무엇입니까?

읽기 전용 드라이브에서 '?' 및 ':'과 같은 문자가 포함된 파일을 ntfs로 복사하는 방법은 무엇입니까?

Mac(hfs+)에서 복구된 파일 드라이브가 있고 Windows 시스템에서 액세스할 수 있도록 이를 ntfs 볼륨에 복사하려고 합니다. 안타깝게도 복사할 수 없는 문자가 포함된 파일이 꽤 많습니다.

아주 비슷한 질문이네요이것, 그러나 windows_names 옵션을 사용하고 rsync 및 iconv 옵션(utf-8 및 utf-8-mac을 다른 순서로 사용하거나 "." 사용)을 사용하여 ntfs 볼륨을 마운트하려고 시도했지만 성공하지 못했습니다. 내가 이해한 바로는 원시 파일로 드라이브에 쓸 수 없기 때문에 해독 옵션도 사용할 수 없습니다(저널링된 hfs+는 Linux에서 읽기 전용으로만 설치할 수 있습니다).

저는 Ubuntu 19.04를 사용하고 있으며 지금까지 GUI 및 rsync에서 복사를 시도했습니다.

도움이 된다면 "windows_names" 옵션을 사용하여 ntfs 드라이브를 마운트하세요.

sudo rsync --append-verify -r <source> <dest>

그리고 얻다

rsync: open "/location/Reunion??.rtf" failed: Invalid argument (22)

잘못된 문자가 포함된 파일에서.

원래 드라이브나 잘못된 문자를 허용하지 않는 대상에 쓰지 않도록 해독을 통해 파일을 파이프할 수 있는 방법이 있습니까? 모든 파일을 수동으로 변경해야 합니까? 어쩌면 정규식 스크립트 옵션이 있을까요?

답변1

이상적이지는 않지만 ext4 드라이브를 중간 위치로 사용하여 문제를 해결했습니다. hfs+ 드라이브의 파일을 ext4로 복사한 다음 detox를 사용한 다음 해당 파일을 다시 ntfs 드라이브에 복사했습니다.

답변2

관련 질문은 기본적으로 파일을 반복하고 대상 드라이브로 즉시 이름을 바꾸고 콜론 :과 물음표를 ?밑줄로 변경하는 사용자 정의 bash 스크립트를 사용하여 이 문제를 해결했습니다 _.특수 문자가 포함된 파일을 USB FAT32에 동기화

쉘 스크립트에서 소스/대상 디렉토리의 이름을 간단히 바꿀 수 있습니다.

관련 정보