고정된 형식(행당 5열)으로 배열된 백만 개의 로그 파일을 반복하고 있습니다.
0 0.258517 0.20418 0.1592 0.258123
두 번째 열의 숫자를 가져와 로그 파일 이름과 함께 별도의 로그에 저장해야 합니다. 이때 다음 형식을 유지해야 합니다(따라서 최종 로그에는 각 로그의 N 행이 포함되어야 합니다).
name_of_file1: 0.258517
...
name_of_fileN: nnnnnnn
여기서 가능한 해결책은 두 번째 열 값(AWK??)을 사용하는 일부 함수가 누락된 것입니다.
cd foler_with_all_logs
# do something to extract the number and then add the line with $log_name to >> final_summary.log
awk '-F, *' '{ printf("%s| %s\n", FILENAME,$2) }' *.log >> final_summary.log
이것은 내 AWK 함수의 문제입니다. 로그 파일의 두 번째 열 형식을 인식하지 못합니다.
답변1
표시하는 파일은 쉼표로 구분된 것처럼 보이지 않으므로 해당 -F,
. 당신이 원하는 것은 이것이 전부인 것 같습니다:
cd folder_with_all_logs
awk '{print $2,FILENAME}' * > final_summary.log