
두 개의 파일 c:\f1\data.txt
과 c:\f2\data.txt
.
내가 명령을 내리면
copy c:\f2\data.txt c:\f1\data\
잠재적인 덮어쓰기에 대한 경고를 받게 됩니다. data.txt
에서 그래픽 방식으로 끌어서 c:\f2\
놓으 려고 하면 대화 상자와 동일한 경고가 표시됩니다 c:\f1
. 이 동작은 파일 이름이 동일하기 때문에 발생합니다( data.txt
). 이 동작에 만족하지만 파일에도 확장하고 싶습니다.이름은 다르지만 내용은 같습니다.
두 개의 파일이 있고 한 줄 과 한 줄이 포함되어 있다고 가정 해 보겠습니다 c:\f1\foo.txt
. 따라서 내용은 동일합니다. 이제 명령은 다음과 같습니다 .c:\f2\bar.txt
foo.txt
Hello World!
bar.txt
Hello World!
foo.txt
bar.txt
copy c:\f2\bar.txt c:\f1\
성공하겠지만 실패하고 싶습니다.
하나의 폴더에 대해서만 이 동작을 수행할 수 있으면 좋겠습니다. 내 목표를 달성할 수 있는 소프트웨어가 있습니까?
답변1
이 작업을 수행할 수 있는 프로그램은 없습니다.
복사본을 복사하기 전에 비교하고 동일한 경우 경고하는 스크립트나 응용 프로그램을 쉽게 작성할 수 있습니다. 하지만...항상 주의할 점이 있습니다. 비교는 어떻게 하시나요? 텍스트 파일을 다루고 있으므로 데이터가나타나다동일하지만 그렇지 않습니다. 다음 예를 들어보세요.
이것은 테스트입니다.
그리고
이것은 테스트입니다.
라인이 정말 똑같아 보이네요. 그러나 컴퓨터에서는 다릅니다. 마우스를 잡고 마우스 왼쪽 버튼을 클릭한 채로 첫 번째 예를 강조 표시하세요. 그런 다음 두 번째 줄을 강조 표시합니다. 차이점이 보이나요? 두 번째 예의 마침표 뒤에 공백이 있습니다. 이러한 문자열은 동일한 정보를 전달하지만 동일하지 않습니다. 단일 문자, 1바이트의 차이라도 복사가 가능합니다. 괜찮다면 애플리케이션이나 스크립트는 매우 쉽습니다. 두 파일의 해시 값을 가져와서 해당 값을 비교하는 것이 좋습니다. 값이 동일하면 경고하고 복사를 거부합니다.