2012-07-27 3 views
1

좋아, 이건 내가 미친 운전이야. 나는이 텍스트를 가진 파일을 찾을 수있는 라이너가있다. 그러나 나는 날짜와 시간을 정확하게 정렬 할 수 없다. 오름차순으로 날짜와 시간을 적절하게 정렬하지 않습니다. 이견있는 사람?파일 목록 정렬 aix one liner

$find . -name "dm_rmc_mover*" -mtime -1 -exec grep -il "Error Message: " '{}' \; | xargs ls -ltr 

출력의 예 ...

$-rw-rw-r-- 1 root  d_prod  205166 26 Jul 09:35 ./dm_rmc_mover309030.log 
$-rw-rw-r-- 1 root  d_prod  209695 26 Jul 09:35 ./dm_rmc_mover309015.log 
$-rw-rw-r-- 1 root  d_prod  208945 27 Jul 01:37 ./dm_rmc_mover25405.log 
$-rw-rw-r-- 1 root  d_prod  210330 27 Jul 01:37 ./dm_rmc_mover22082.log 
$-rw-rw-r-- 1 root  d_prod  210273 27 Jul 01:37 ./dm_rmc_mover22048.log 
$-rw-rw-r-- 1 root  d_prod  210330 27 Jul 01:38 ./dm_rmc_mover22059.log 
$.... 
$-rw-rw-r-- 1 root  d_prod   3294 27 Jul 08:38 ./dm_rmc_mover310651.log 
$-rw-rw-r-- 1 root  d_prod   3358 27 Jul 08:38 ./dm_rmc_mover310954.log 
$-rw-rw-r-- 1 root  d_prod  177163 27 Jul 08:39 ./dm_rmc_mover276166.log 
$-rw-rw-r-- 1 root  d_prod  176643 27 Jul 08:39 ./dm_rmc_mover276577.log 
$-rw-rw-r-- 1 root  d_prod  106788 27 Jul 09:12 ./dm_rmc_mover311916.log 
$-rw-rw-r-- 1 root  d_prod   3189 20 Jul 02:22 ./dm_rmc_mover52860.log 
$-rw-rw-r-- 1 root  d_prod   3189 20 Jul 02:22 ./dm_rmc_mover52186.log 
$-rw-rw-r-- 1 root  d_prod  194825 20 Jul 11:24 ./dm_rmc_mover377215.log 
$-rw-rw-r-- 1 root  d_prod  180234 20 Jul 11:26 ./dm_rmc_mover375105.log 
$-rw-rw-r-- 1 root  d_prod  147975 20 Jul 12:24 ./dm_rmc_mover412600.log 
$-rw-rw-r-- 1 root  d_prod  208897 20 Jul 12:24 ./dm_rmc_mover411173.log 
$-rw-rw-r-- 1 root  d_prod  193887 20 Jul 12:24 ./dm_rmc_mover412596.log 
$-rw-rw-r-- 1 root  d_prod  76626 20 Jul 13:06 ./dm_rmc_mover446896.log 
$-rw-rw-r-- 1 root  d_prod  135722 20 Jul 13:06 ./dm_rmc_mover446895.log 
$-rw-rw-r-- 1 root  d_prod  145209 20 Jul 13:08 ./dm_rmc_mover446908.log 
$-rw-rw-r-- 1 root  d_prod   3272 23 Jul 14:48 ./dm_rmc_mover532883.log 

는 결국은 27 일 마지막 세 개의 파일에 도달!

+1

입력/출력을 게시 할 수 있습니까? – kev

답변

0

xargs은 파일 목록을 ls -ltr의 여러 호출로 나눕니다. 따라서 올바른 순서로 나열된 파일 그룹을 얻지 만 전체적으로 출력이 예상대로 정렬되지 않습니다. 각 명령을 실행하기 전에 또는 --verbosexargs 인수에 추가하여 확인할 수 있습니다.

모든 로그 파일이 계층 구조가 아닌 동일한 디렉토리에 있다고 가정하면 이처럼 무언가가 더 잘 작동 할 수 있습니다. 그러나 테스트되지 않은 파일 목록을 생성하는 것이 좋습니다. 원하는 순서로 필터링 한 다음 패턴과 일치하는 필터로 필터링 한 다음 마지막으로 ls -l 출력을 얻으십시오.

ls -tr | grep dm_rmc_mover | xargs grep -il "Error Message: " | xargs ls -l