awk 스크립트가 있고 CSV 파일을 전달했습니다.
awk -f script.awk /home/abc/imp/asgd.csv
내가하고있는 일은에서 FILENAME을 얻는 것 script.awk
입니다. FILENAME이 전체 경로를 알려줍니다. 내가 awk에 있기 때문에 나는 사용할 수 없다 basename FILENAME
.
print FILENAME;
/home/abc/imp/asgd.csv
나는 이것을 이것으로 시도했다. script.awk
echo $FILENAME | awk -F"/" '{print $NF}'
하지만 내에서 이것을 실행할 수 없습니다 script.awk
. 어떻게 얻을 수 asgd.csv
AWK 프로그램 내에서?
n = split(FILENAME, a, "/"); basename=a[n];
.. 변수sub
를 실제로 변경 하기 때문에 사용하지 마십시오FILENAME
(awk는 값으로 호출을 사용하기 때문에 함수에서 문제가되지 않습니다).