Mam skrypt awk i przekazałem mu plik CSV.
awk -f script.awk /home/abc/imp/asgd.csv
To, co robię, to uzyskanie FILENAME wewnątrz script.awk
. FILENAME daje mi całą ścieżkę. Ponieważ jestem w awk, nie mogę używać basename FILENAME
.
print FILENAME;
/home/abc/imp/asgd.csv
Próbowałem z tym w środku script.awk
echo $FILENAME | awk -F"/" '{print $NF}'
ale nie mogę tego wykonać wewnątrz script.awk
. Jak mogę dostać się asgd.csv
do programu awk?
n = split(FILENAME, a, "/"); basename=a[n];
. Nie używaj,sub
ponieważ zmieni toFILENAME
zmienną (co nie jest problemem z funkcją, ponieważ awk używa wywołania według wartości).