소개
이번 챌린지는 데이터 스트림 재지정 (Redirection) 기술을 활용하여 리눅스 시스템의 명령어 사용 기록을 분석하는 데 중점을 둡니다. 이 과제를 완수함으로써 텍스트 처리 능력을 향상시키고, 주요 리눅스 명령어에 익숙해지며, 리눅스 환경에서의 입출력 제어 방식을 깊이 있게 이해할 수 있습니다.
스트림 재지정을 활용한 명령어 기록 분석
요구 사항
명령어 사용 기록이 담긴 파일을 분석하는 것이 이번 과제의 핵심입니다. 파일 내에서 가장 빈번하게 사용된 상위 3 개의 명령어를 찾아내어 그 결과를 /home/labex/project/result 파일에 저장해야 합니다. 모든 작업은 스트림 재지정 기술을 사용하여 수행해야 합니다.
수행 과제
/home/labex/project/디렉토리에 있는data1파일을awk,sort,uniq,head명령어와 스트림 재지정을 조합하여 처리하세요.- 가장 많이 사용된 상위 3 개의 명령어 정보를
/home/labex/project/result파일로 재지정하여 저장하세요. - 결과 형식은 "횟수 명령어" 형태 (예: "100 ls") 로 빈도수와 명령어가 모두 포함되어야 합니다.
예시
data1 파일의 샘플 내용:
895 echo $?
896 openstack compute service list
897 cd /home/chy/openstack/
898 . admin-openrc
/home/labex/project/result 파일에 저장될 출력 형식 예시:
150 openstack
114 systemctl
105 ls
결과 파일에는 사용 빈도가 가장 높은 상위 3 개의 명령어만 포함되어야 합니다.
힌트
파일 내용에서 명령어 부분만 추출하기 위해 awk를 사용할 수 있습니다. 다음은 유용한 awk 사용 예시입니다:
awk '{print $2}': 각 줄의 두 번째 필드를 출력합니다.awk '{print $1, $2}': 각 줄의 첫 번째와 두 번째 필드를 출력합니다.
요약
이번 챌린지를 통해 리눅스 스트림 재지정 기술을 적용하여 명령어 사용 기록을 분석하는 실무적인 연습을 마쳤습니다. 이 과정에서 텍스트 처리 능력을 키우고, 필수 리눅스 명령어들에 익숙해졌으며, 입출력 제어의 원리를 파악할 수 있었습니다. 이러한 기술은 리눅스 환경에서 작업하는 시스템 관리자와 고급 사용자에게 매우 가치 있는 역량입니다.



