2014-11-07 2 views
0

나는 디렉토리 목록을 가지고있다. (예 : a1, a2, a3, a4, a5) 마지막으로 수정 된 디렉토리를 가져와 다음 파일에 액세스해야합니다 (a3이 최신 디렉토리 수정 된 경우 즉, 마지막으로 파일을 a3에 넣은 경우) , 이번에는 a4에서 파일을 이동해야합니다.) ... 그리고 a5가 마지막으로 수정 된 dir 인 경우 a1에서 파일을 이동해야합니다. 따라서 라운드 로빈 방식으로 작동합니다. u pls 제안이 어떻게 이것을 얻을 수 있습니까?유닉스 쉘 스크립트의 라운드 로빈 알고리즘

+0

"다음 항목"은 어떻게 정의합니까? –

+0

"다음 항목"을 정의하지 않았습니다. 마지막으로 수정 한 폴더의 값을 가져 오면 하나씩 증가시킵니다. – thankit95

+1

은 가장 최근에 수정하지 않은 디렉토리를 원한다는 말도 안되는 복잡한 방법일까요? –

답변

0

이것은 stat 명령이있는 시스템에서만 작동합니다. 귀하의 질문에 당신에게 예의 바른 대답 - 예를 들어 유닉스 OS를 제공하기 위해 더 많은 정보가 필요합니다. 이런 이유로 서투른입니다. 더 좋은 방법이 있습니다.

oldestdir=$(stat -c "%n %Y" a1 a2 a3 a4 a5 | sort -k2rn | head -1 | awk '{print $1}') 

$ oldestdir은 @KarolyHorvath가 지적한 LRU 디렉토리의 이름입니다. "1 씩 증가"시킬 수 없습니다.

관련 문제