当你正在编写一个shell脚本的时候,你可能会遇到只需要当前目录名,而不是绝对路径的情况,该怎么做呢?这里有四种方法帮助你只提取当前的目录名,例:
最终获取的目录名为:人性的哲学与科学
Using basename(最直接简单地方式)
basename /usr/local/bin
bin当然,可以结合pwd更灵活地使用:
cd /usr/local/bin
basename `pwd`
bin
Using parameter substitution with echo (结合echo使用参数替代的方式)
cd /var/log/squid
echo ${PWD##*/}
squid
Using awk and rev(awk和rev结合使用的方式)
cd /usr/share/cups/data
pwd | rev | awk –F \/ '{print $1}' | rev
data
Using sed(采用sed工具,此法不建议使用)
cd /home/smith/music
pwd | sed 's,^\(.*/\)\?\([^/]*\),\2,'
music
你也可以看到,linux给你很多的方法去获取目录名(其他的语言也是一样的啦~)