的最后一个字段拆我有不同的路线,一些文件象下面这样:如何完整路径
./a/b/c/test.h
./d/e/f/g/h/abc1.c
./i/j/k/l/m/n/o/p/hello.log
...
而且我想只有每一个文件名。即:我想要“test.h”,“abc1.c”,“hello.log”。
由于路线的深度并不确定,所以awk可能无法帮助我解决问题。 任何人都可以帮助我吗?
的最后一个字段拆我有不同的路线,一些文件象下面这样:如何完整路径
./a/b/c/test.h
./d/e/f/g/h/abc1.c
./i/j/k/l/m/n/o/p/hello.log
...
而且我想只有每一个文件名。即:我想要“test.h”,“abc1.c”,“hello.log”。
由于路线的深度并不确定,所以awk可能无法帮助我解决问题。 任何人都可以帮助我吗?
basename
往往是这样做的方法,但这里是你如何能做到这一点在AWK:
filename=./i/j/k/l/m/n/o/p/hello.log
echo "$filename" | awk -F/ '{print $NF}'
另:
awk -v filename="$filename" 'BEGIN {len = split("/", filename, a); print a[len]}'
in pure Bash:
echo ${filename##*/}
awk -F"/" '{print $NF}' file_name
'男人basename'? –
是的,谢谢大家! basename是我想要的确切命令! – zhaojing