dirname和basename命令

dirname返回文件所在目录路径,而basename则相反,去掉路径返回最后的文件名。

dirname指令

1、功能:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),然后返回剩下的路径(目录的部分)

2、用法:dirname filename
例如下面几个例子
(1)# dirname /etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts
(2)# dirname /boot/grub/grub.conf
/boot/grub
(3)# dirname /etc/inittab
/etc
(4)# echo `pwd` && dirname modprobe.conf
/etc
.
(5)#echo `pwd` && dirname sysconfig/network-scripts/
/etc
sysconfig

basename 命令

 
首先使用 --help 参数查看一下。basename命令参数很少,很容易掌握。
  1. $ basename --help
用法示例:
 $ basename /usr/bin/sort       输出"sort"。
 $ basename ./include/stdio.h .h  输出"stdio"。
 
 为basename指定一个路径,basename命令会删掉所有的前缀包括最后一个slash(‘/’)字符,然后将字符串显示出来。
basename命令格式:
basename [pathname] [suffix]
basename [string] [suffix]
 
suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉。
示例:
  1. $ basename /tmp/test/file.txt
  2. file.txt
  3. $ basename /tmp/test/file.txt .txt
  4. file
原文地址:https://www.cnblogs.com/ph829/p/5089128.html