2014-02-19 2 views
1

로그 파일 (열)에서 가장 자주 발생하는 항목을 분석하려고합니다. 세부 결과를 작성하려면, 내가xargs 인수 번호를 접두어로 붙입니다.

cat logs| cut -d',' -f 6 | sort | uniq -c | sort -rn | head -10 | \ 
awk '{print $2}' |xargs mkdir -p 

의 라인을 따라 뭔가의 출력에서 ​​새로운 디렉토리를 만드는 오전 접두사로 xargs를 처리로 인수의 일련 번호와 디렉토리를 만들 수있는 방법이 있습니까? 예 : 예 : "oranges"는 (디렉토리의) 가장 빈번한 엔트리이며 "oranges"라는 이름을 붙여야합니다.

답변

0

cat -n을 통해 디렉토리 이름을 올바른 순서로 파이프 처리 한 다음 xargs에 전달하기 전에 디렉터리 이름과 줄 번호를 구분하는 공백을 제거 할 수 있습니다.

더 나은 솔루션은 awk 명령을 수정하는 것입니다 :

... | awk '{ print NR "." $2 }' | xargs mkdir -p 

NR 변수는 레코드 (즉 라인) 수를 포함합니다.