Windows 7 Professional 64비트를 사용하는 경우...
배치 파일과 RoboCopy.exe를 사용하여 복사했습니다.
c:\temp = SDD(Solid State Drive) 에서 4개의 파일과 2개의 디렉터리
r:\temp = 다음 명령이 포함된 USB 스틱(플래시 드라이브)
"C:\WINDOWS\system32\ROBOCOPY.EXE" "D:\TEMP" "R:\TEMP" /V /TEE /S /E /COPY:DAT /DCOPY:T /NP /XJ /R:1000000 /W :30 /LOG:r:\RoboCopyInfo.LOG
질문:
diff.exe에서 RoboCopy를 통해 위의 복사 명령 결과를 확인하고 오류는 없지만
텍스트 파일에 대한 du.exe에서 차이가 보이는 이유는 무엇입니까?
"C:\Program Files\Gow\bin\DIFF.exe" -q -r "D:\TEMP" "R:\TEMP"
:: DIFF.exe = diff(GNU diffutils) 2.8.7 https://github.com/bmatzelle/gow/releases
:: -q = 파일이 다른지 여부만 출력합니다.
:: -r = 발견된 하위 디렉터리를 재귀적으로 비교합니다.
:: "D:\TEMP" = SDD(Solid State Drive)의 소스 파일.
:: "R:\TEMP" = 대상 드라이브는 HDD 또는 USB 스틱(플래시 드라이브)입니다. R을 적절한 문자로 바꾸십시오.
:: DIFF.exe 종료 상태는 입력이 동일하면 0, 다르면 1, 문제가 있으면 2입니다.
그러나 텍스트 파일에 대한 du.exe는 위의 다른 배치 파일로 간주됩니다.
디:
CD\
CD 온도
"C:\Program Files\Gow\bin\du.exe" -a -b -c -P -S -x >r:\DU_d_TEMP.txt
아르 자형:
CD\
CD 온도
"C:\Program Files\Gow\bin\du.exe" -a -b -c -P -S -x >r:\DU_r_TEMP.txt
:: du.exe = 디스크 사용량(GNU coreutils) 5.3.0 https://github.com/bmatzelle/gow/releases
:: "D:\TEMP" = SDD(Solid State Drive)의 소스 파일.
:: "R:\TEMP" = 대상 드라이브는 HDD 또는 USB 스틱(플래시 드라이브)입니다. R을 적절한 문자로 바꾸십시오.
:: -a = 디렉토리뿐만 아니라 모든 파일에 대한 쓰기 횟수
:: -b = 바이트, `--apparent-size --block-size=1'과 동일
:: -c = total, 총합계를 생성합니다.
:: -P = --no-dereference, 기호 링크를 따르지 않습니다(기본값).
:: -S = --separate-dirs, 하위 디렉터리의 크기를 포함하지 않음
:: -x = --one-file-system 다른 파일 시스템의 디렉터리를 건너뜁니다.
DU_d_TEMP.txt
908./cicon9.gif
18855 ./도움말/HTML/usage.htm
27047 ./도움말/HTML
0 ./도움말
297 ./출력 1 .log
52876 ./Q.EXE
58177 .
총 85224
DU_r_TEMP.txt
908./cicon9.gif
297 ./출력 1 .log
52876 ./Q.EXE
18855 ./도움말/HTML/usage.htm
18855 ./도움말/HTML
0 ./도움말
54081 .
총 72936
du.exe 텍스트 파일의 차이점은 다음과 같습니다.
12288바이트(85224~72936)
질문:
diff.exe에서 RoboCopy를 통해 위의 복사 명령 결과를 확인하고 오류는 없지만
텍스트 파일에 대한 du.exe에서 차이가 보이는 이유는 무엇입니까?
--
답변1
나는 이것을 대답으로 말하기를 주저하지만 몇 가지 가능한 설명이 있습니다. 나는 du나 diff에 익숙하지 않지만 diff는 파일을 비교하고 차이점을 보고하는 반면 du는 모든 파일과 디렉터리의 파일 및 디렉터리 크기를 보고한다고 가정합니다. du 결과 파일을 보고 복사된 파일 요약:
- 총 4개의 파일; 하위 디렉터리 2개 및 루트 디렉터리(
.
) - 루트(
.
)에 있는 세 개의 파일 합계54081바이트. DU_d_TEMP.txt 보고서58177바이트, 차이4096바이트. - /Help 디렉토리에 직접 파일이 없습니다.
- /Help/HTML 디렉토리 합계 아래에 하나의 파일18855바이트. 그러나 DU_d_TEMP.txt 보고서는27047/Help/HTML의 바이트, 차이점8192바이트.
설명 1: D:에는 Robocopy가 무시했거나 복사할 수 없는 시스템/숨겨진 파일 또는 접합이 있습니다. 아마도 다른 파일 시스템에 있습니까? (이유가 궁금하다.-엑스du)에서 플래그가 사용되었습니다.~할 것 같지 않은, Robocopy는 복사할 파일을 선택할 때 대부분의 소스 파일 속성을 무시하기 때문입니다. 그러나 복사할 파일을 선택했지만 복사할 수 없는 경우에는가능한du 및 diff는 시스템/숨겨진 파일 자체를 무시할 수 있지만 du는 해당 디렉토리에서 공간이 사용되었음을 감지했습니다. 전체 설정, 파일 시스템, 연결된 드라이브/머신 등을 모르거나 Robocopy 로그 파일을 보지 않고는 아직 이를 배제할 수 없습니다. 예를 들어 다음을 참조하세요.이 답변Windows 파티션의 파일은 Ubuntu에서는 볼 수 있지만 Windows에서는 볼 수 없다는 것에 관한 askubuntu 포럼에서.
설명 2: D:의 파일 시스템은 R:의 파일 시스템과 다르게 파일을 저장합니다. 4096바이트는 최신 드라이브의 일반적인 섹터 크기이므로 루트( ) 및 /Help/HTML/ 디렉터리에 있는 두 개의 더 큰 파일(1KB 미만의 파일과 반대)에는 .
추가 섹터(4096바이트) 또는 2개(8192bytes)는 사용되지 않는 파일에 할당됩니다.
나는 이것이 유일한 두 가지 설명이라고 말하는 것이 아니지만 이것은 두 가지입니다.가능한설명. 아직 갖고 계시다면 Robocopy 로그 파일을 올려주세요~할 것 같다설명 1을 배제합니다.