Mac(Linux) - mv 명령을 통해 제거된 파일 복원

Mac(Linux) - mv 명령을 통해 제거된 파일 복원

한 가지 큰 문제가 있습니다. main.c와 logic.c라는 두 개의 파일이 있습니다. logic.c의 일부 수정을 위해 sed를 사용한 다음 main_updated.c에 저장하고 실행했습니다.

mv main_updated.c main.c

하지만 logic_updated.c와 logic.c여야 했습니다. PLS 누구든지 저에게 도움을 줄 수 있습니다. main.c 파일을 복원하는 방법, 그렇지 않으면 저는 죽습니다.

답변1

오래된 데이터가 사라졌을 가능성이 매우 높습니다. 이는 데이터를 덮어쓸 때 파일 시스템이 어떻게 작동하는지에 따라 달라집니다. 파일 시스템이 단순히 inode를 해제하고 드라이브의 다른 위치에 새 inode를 할당하는 경우 복구 프로그램을 사용하여 데이터를 찾을 수 있습니다. 어쩌면 - 아마도 많은 inode를 반환할 것이기 때문에 어디를 봐야 할지 알아야 합니다. (그리고 어떤 파일에 파일의 모든 데이터가 포함되어 있는지 알지 못할 수도 있으므로 수동으로 모아야 합니다.)

교훈 - (대부분의) 모든 변경 후에 커밋 ;P

답변2

실제로 main.c 파일을 훼손한 것 같습니다.

앞으로는 다음과 같이 mv를 "대화식으로" 사용할 수 있습니다.

mv -i filename new_filename/or_path

파일을 덮어쓰기 전에 사용자에게 확인합니다.

또한 버전 제어 소프트웨어를 자주 커밋하는 것도 좋은 생각입니다.

관련 정보