![파일 이름과 경로의 길이가 다른 경우 Awk의 경로에서 파일 이름을 어떻게 추출할 수 있나요? [복사]](https://linux55.com/image/206792/%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%A6%84%EA%B3%BC%20%EA%B2%BD%EB%A1%9C%EC%9D%98%20%EA%B8%B8%EC%9D%B4%EA%B0%80%20%EB%8B%A4%EB%A5%B8%20%EA%B2%BD%EC%9A%B0%20Awk%EC%9D%98%20%EA%B2%BD%EB%A1%9C%EC%97%90%EC%84%9C%20%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%A6%84%EC%9D%84%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%B6%94%EC%B6%9C%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
주어진 디렉토리와 그 하위 디렉토리에 있는 파일당 평균 라인 수를 계산하는 Awk 스크립트가 있으며, 다음과 같이 파일 이름과 파일 평균을 인쇄해야 합니다.
example.c : 5
그래서 저는 이와 같은 파일 이름을 갖고 있고 ../labor1/munka/hazik_pagi4188/hazik/c_prog/lab1/fork2.c
이와 같은 파일 이름을 원합니다 fork2.c
(파일 이름과 경로의 길이가 다릅니다).
답변1
"재귀적으로" 시도 하고 다음 과 같은 grep
삭제 경로를 사용하십시오 .sed
grep -rc "." | sed 's#^.*/##'
madsum.awk:11
zmz.awk:14
file_to_process.txt:2