Windows 시스템에서 파일 이름 바꾸기는 기능적으로 파일을 삭제하는 것과 비슷합니까?


9

Windows 파일 시스템에 대한 나의 이해에 따르면, 프로그램은 경로에 따라 파일을 읽을 수 있습니다.이 경로가 변경되면이 파일을 읽는 데 사용 된 모든 프로그램은 더 이상 그렇게 할 수 없습니다. 즉, 파일에 의존하는 Windows 시스템의 모든 프로그램에서 파일을 삭제하고 이름을 바꾼 결과는 동일해야합니다.

이 답변이 의존하는 특정 사례는 Windows 2000에서 실행되는 내장 시스템이며 서비스 공급자 설명서는 사용자가 폴더 내의 파일을 삭제하도록 안내합니다. 신중한 사용자로서 파일을 "folder_backup"이라는 경로에 복사하고 폴더를 비워 두었습니다.

이 작업 중에 시스템이 퇴보하여 올바르게 작동하지 못했습니다. 따라서 매뉴얼을 작성한 서비스 제공자가 호출되었습니다. 두 개의 데이터베이스가 병렬로 연결되어 두 번째 데이터베이스로 "folder_backup"을 가리 키기 때문에 데이터베이스가 손상된 것으로 진단되었습니다. 필자가 이해할 수 있듯이 "D : / folder_backup"내부의 파일은 "폴더"로 시작하거나 "D : /"파일의 모든 내용을 읽는 폴더를 찾는 예외적 인 경우를 제외하고는 비활성 일 수 있습니다.

시스템이 이름을 바꾼 파일에 여전히 모호하지 않은 방법으로 파일에 액세스 할 수 있는데, 그렇지 않으면 파일이 삭제되지 않았습니까?


1
실제로 파일을 복사하거나 (한 시점에 두 개의 사본을 가지고 원본을 삭제 했습니까) 단순히 이동 했습니까?
GSerg

1
해당 데이터베이스를 읽을 때 시스템이 실행 중 이었습니까 ? Windows (Linux에서도)는 파일이 열려있는 동안 파일을 복사 할 수 있습니다 (특정 "모드"에서 파일을 여는 응용 프로그램에 따라 다름). 이로 인해 사본이 손상 될 수 있습니다 (BTW).
davidbak 2018 년

@davidbak 음수, 파일 이름을 바꿀 때 응용 프로그램이 닫혔습니다.
Tomas Zubiri 2016 년

@GSerg 폴더 이름을 바꾼 다음 응용 프로그램 설정에서 폴더를 다시 만들 수 있다고 생각합니다.
Tomas Zubiri 2018 년

파일의 ID가 정수이고 파일 이름이 실제로 이름에서 ID 로의 맵핑 일 뿐이고 파일이 이름이없고 프로세스가 열릴 때까지 파일이 삭제되지 않는 Unix 파일 시스템과 비교하십시오. Unix에서 파일 이름을 바꾸면 새로운 이름 매핑이 추가되고 이전 이름이 제거되므로 파일이 삭제되지 않습니다.
Raedwald

답변:


16

정말 선택 버릇.


와우, 나는 파일의 이름을 바꾸어 무언가를 깰 수있는 많은 방법이있을 것으로 기대하지 않았습니다. 감사!
Tomas Zubiri 2016 년

@ wizzwizz4 2000은 NT입니다.
zdimension

-2

이름이 바뀐 파일은 다른 프로그램에서 계속 액세스 할 수 있습니다.

  • 다른 프로그램이 이름을 바꾼 파일에 여전히 액세스 할 수있는 한 가지 방법은 파일 이름을 바꾼 동일한 프로그램에 의해 새 파일 경로로 설정되는 환경 변수입니다. 해당 파일에 액세스하려는 프로그램은 내부적으로 설정된 고정 파일 경로 대신 파일 경로에 환경 변수를 사용합니다.

  • 다른 방법은 파일이 특정 폴더에서 유일한 파일이되는 것입니다. 이 파일을 사용하려는 프로그램은 해당 특정 폴더에 둘 이상의 파일이 있으면 안된다는 것을 알고 있지만 파일 이름은 변경 될 수 있지만 파일이 속한 디렉토리는 동일하게 유지됩니다. 프로그램은 단순히 해당 폴더에서 찾을 수있는 첫 번째 파일 만 사용하며 항상 해당 파일이어야합니다. 그러나 이것은 좋은 습관이 아니며 환경 변수를 사용하는 것이 좋습니다.

실패하면 일부 프로그램은 파일을 계속 실행하기 전에 파일을 찾도록 자동으로 요청합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.