%7D'%60%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9D%84%20%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
grep "variable1=" $file | awk '{printf("%5.3f,\n", $2)}' > .rpt_variable1
내 질문:
- '%5.3f'의 숫자 5는 무엇을 합니까?
- $2의 의미는 무엇입니까?
- 'awk' 명령은 정확히 무엇을 합니까?
답변1
Awk는 파일을 한 줄씩 스캔하고 지정된 문자열을 찾아서 변경하는 프로그램입니다(원하는 경우). 이 전체 명령은 일부 파일($file)을 조사하여 'variable1='이 포함된 행을 찾습니다. grep 부분입니다.
이 경우 Awk는 해당 라인을 통해 두 번째 필드($2)를 찾습니다. 그런 다음 필드 2의 값을 nnnnn.nn(n은 단일 숫자) 형식으로 .rpt_variable1 파일에 출력합니다. 이는 통화 형식처럼 보이므로 필드 2는 아마도 달러 값일 것입니다. 5는 '달러' 부분을 5자리로 인쇄한다는 의미입니다(예: $12,500의 경우 12500, $543의 경우 00543). 5.2의 2는 소수점 이하 두 자리까지 인쇄한다는 의미이며, 이는 센트의 경우 일반적입니다.