wanggongzhen 2014-12-22
一、dirname指令
1、功能:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),返回目录的部分
2、用法:dirname filename
例子
[root@eccs_web log]# dirname /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts [root@eccs_web log]# dirname /boot/grub/grub.conf /boot/grub [root@eccs_web log]# dirname /etc/inittab /etc [root@eccs_web log]# echo `pwd` && dirname /etc/sysconfig/network-scripts/ifcfg-eth0 /home/Adtec/log /etc/sysconfig/network-scripts
[root@eccs_web log]# cat a.sh #!/bin/bash #$0代表当前执行的脚本程序或者是命令 echo $0 echo `dirname $0` APP_PATH="$(cd "$(dirname "$0")" && pwd)/.." echo $APP_PATH [root@eccs_web log]# ./a.sh ./a.sh . /home/Adtec/log/..
二、basename指令
1、功能:从给定的包含绝对路径的文件名中去除左边目录部分或者同时去除某个后缀的内容(目录的部分),返回非目录的部分
2、用法:basename filename [suffix]
[root@eccs_web log]# basename /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-eth0 [root@eccs_web log]# basename /boot/grub/grub.conf grub.conf [root@eccs_web log]# pwd /home/Adtec/log 打印pwd命令 和 basename命令结果 [root@eccs_web log]# echo `pwd` && basename sysconfig/network-scripts/ /home/Adtec/log network-scripts #去除后面的.bak [root@eccs_web log]# basename /boot/grub/grub.conf.bak .bak grub.conf #去除后面的.conf.bak [root@eccs_web log]# basename /boot/grub/grub.conf.bak .conf.bak grub