![두 파일의 두 필드를 비교하고 각 파일의 개수와 함께 파일의 공통 항목을 인쇄합니다.](https://linux55.com/image/143370/%EB%91%90%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EB%91%90%20%ED%95%84%EB%93%9C%EB%A5%BC%20%EB%B9%84%EA%B5%90%ED%95%98%EA%B3%A0%20%EA%B0%81%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EA%B0%9C%EC%88%98%EC%99%80%20%ED%95%A8%EA%BB%98%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EA%B3%B5%ED%86%B5%20%ED%95%AD%EB%AA%A9%EC%9D%84%20%EC%9D%B8%EC%87%84%ED%95%A9%EB%8B%88%EB%8B%A4..png)
아래와 같이 두 개의 파일이 있습니다
파일 1
Emp1 Dec10 12Am
Emp2 Dec10 2Am
Emp3 Dec10 4Am
Emp2 Dec10 6Am
Emp1 Dec10 8Am
파일 2
Emp1 Dec11 12Pm
Emp2 Dec11 2Am
Emp1 Dec11 3Am
Emp3 Dec11 4Am
Emp1 Dec11 5Am
그래서 출력을 다음과 같이 만들려고했습니다.
Emp1 presence on Dec10 was 2 times and on Dec11 was 3 times.
Emp2 presence on Dec10 was 2 times and on Dec11 was 1 time.
Emp3 presence on Dec10 was 1 time and on Dec11 was 1 time.
답변1
이 시도,
EMP=(`awk '!seen[$1]++ {print $1}' File1 File2`)
for emp in "${EMP[@]}"
do
DAYS=`awk -v b=$emp '$1==b {print $2}' File1 File2 | sort | uniq -c | awk '{print $2" was "$1" times"}' | sed ':a;N;$!ba;s/\n/ and on /g'`
echo "$emp presence on $DAYS "
done