파일 자체를 실제로 변경하지 않고 파일의 마지막 액세스 날짜를 변경하려는 이유는 무엇입니까?

파일 자체를 실제로 변경하지 않고 파일의 마지막 액세스 날짜를 변경하려는 이유는 무엇입니까?

운영체제 6

저는 RHEL/Centos를 배우고 있는데 최근에 이 touch명령을 사용하여 파일의 마지막 액세스 날짜를 변경할 수 있다는 것을 배웠습니다. 누군가가 이 작업을 수행하려는 실제 이유를 이해하는 데 어려움을 겪고 있습니다(실제로 파일을 변경하지 않고). 누군가 이것에 대해 자세히 설명해 주시겠습니까?

답변1

touch명령은 다음을 사용하여 빌드된 소프트웨어를 개발할 때 유용합니다.GNU가 만든다또는 이와 유사한 프로그램. make를 사용하여 파일의 타임스탬프를 비교하여 컴파일해야 할 항목을 결정하고 변경되지 않은 파일을 touch강제로 다시 빌드할 수 있습니다 make.

답변2

터치 명령을 사용하는 데에는 여러 가지 이유가 있습니다.

여기"상사에게 좋은 인상을 주는 방법!!"을 포함한 몇 가지 간단한 예가 나와 있습니다.

다음과 같은 개발 환경에서 일반적인 타임스탬프 문제이것.

터치가 그토록 인기 있고 유용한 데에는 더 많은 이유가 있을 수 있습니다.

답변3

마지막 액세스 타임스탬프( )를 묻는 것은 메타데이터 업데이트를 허용하기 위해 파일 시스템이 마운트된(즉, 마운트 옵션이 사용되지 않은) atime디버깅 및 보안 감사에 유용합니다 .noatime

이를 위해 일부 백업 소프트웨어는 파일을 atime백업 전 상태로 재설정하여 메타데이터의 고유한 유용성을 보존합니다. 이 경우 utime쉘 유틸리티의 기반이 되는 기본 운영 체제 호출이 사용됩니다 touch.

질문을 게시한 사용자는 touch myfile"mtime", "atime" 및 "ctime"이 업데이트됩니다. 후자는 inode가 마지막으로 변경된 시간을 나타냅니다. 에 해당 -m또는 스위치를 추가하여 -a변경 사항을 "mtime" 또는 "atime"으로만 제한할 수 있습니다 touch. 후자의 경우 ctime무조건 변경됩니다. 잠재적으로 유용한 정보의 또 다른 흔적입니다.

답변4

다양한 이유로 Touch를 사용할 수 있습니다.

파일이 존재하거나 존재하지 않을 때 일부 프로그램 상태를 "인코딩"하는 스크립트를 작성할 수 있으며, touch 명령은 길이가 0인 파일을 생성하는 매우 접근하기 쉬운 방법입니다.

또한 프로그램은 이러한 타임스탬프를 사용하여 이벤트가 마지막으로 발생한 시간을 기록할 수 있으므로 이벤트가 마지막으로 발생한 시간을 추적하고 싶지만 파일 내용을 변경할 필요가 없는 경우 이 방법을 touch사용하는 것은 쉬운 방법입니다 . 그것.

관련 정보