파일을 다른 폴더로 어떻게 이동할 수 있습니까? 단, 10분 후에도 파일이 수정되지 않은 경우에만 가능합니까?

파일을 다른 폴더로 어떻게 이동할 수 있습니까? 단, 10분 후에도 파일이 수정되지 않은 경우에만 가능합니까?

"10분"을 임의의 값으로 바꾸십시오. 기본적으로 파일이 커지지 않으면 파일을 이동하고 싶습니다. 명령줄이나 bash 스크립트에서 이 작업을 어떻게 수행합니까?

해결하기 쉬운 솔루션이 선호됩니다 cron.


세부 사항:

  • 운영 체제: CentOS
  • 지금까지 시도한 것: 어디서부터 시작해야 할지 모르기 때문에 아무 것도 하지 않았습니다.
  • 파일 종류: 디렉터리에 있는 모든 파일

답변1

다음은 한 줄의 명령입니다.

find /path/to/dir1 -type f ! -mmin -10 -exec mv {} /path/to/dir2 \;

-10원하는 것으로 바꾸십시오 . 규칙은 다음과 같습니다.

+n     for greater than n,
-n     for less than n,
n      for exactly n.

답변2

방법은 다양합니다.

찾기 사용:

if find some_directory -mmin +10 | grep "^filename$" ; then
    mv filename somewhere_else
fi

또 다른 방법은 md5sum을 계산하고 비교하는 것입니다.

touch .filename.md5

prev_md5=$(cat .filename.md5)
new_md5=$(md5sum filename)

if [ "$prev_md5" = "$new_md5" ] ; then
    mv filename somewhere_else
fi
echo "$new_md5" > .filename.md5

10분마다 실행됩니다.

관련 정보