1. 程式人生 > >[sh]basename&dirname截取路徑和文件名&case參數選項

[sh]basename&dirname截取路徑和文件名&case參數選項

include tail ffi usr com reload 選項 star ase

給出全路徑,取出路徑和文件名

basename使用示例

http://codingstandards.iteye.com/blog/840784

示例一

[root@web ~]# basename /usr/bin/sort 
sort
[root@web ~]# dirname /usr/bin/sort 
/usr/bin
[root@web ~]#

示例二

[root@web ~]# basename /usr/include/stdio.h .h 
stdio
[root@web ~]# basename /usr/include/stdio.h stdio.h 
stdio.h
[root@web ~]#

https://blog.csdn.net/wh_19910525/article/details/7519452

#  basename include/stdio.h
stdio.h

#  dirname include/stdio.h
include

## 取一個文件名(去掉後綴名),可以用basename。這個命令使用起來貌似有些死板。你要 完整地寫出 後綴名(想要剔除的部分)。


格式:basename NAME SUFFIX

去掉NAME中的目錄部分和後綴SUFFIX,如果沒有了,則輸出SUFFIX。

例:
aguo@auto-test:~> basename insert.test.sql test
insert.test.sql
aguo@auto-test:~> basename insert.test.sql .test
insert.test.sql
aguo@auto-test:~> basename insert.test.sql sql
insert.test.
aguo@auto-test:~> basename insert.test.sql .sql
insert.test

case參數化啟停腳本

https://blog.csdn.net/love__coder/article/details/7262160

name=`basename $0 .sh` # demo.sh --> 取出: demo

case $1 in
    s|start)
        echo "start..."
        ;;
    stop)
        echo "stop ..."
        ;;
    reload)
        echo "reload..."
        ;;
    *)
        echo "Usage: $name [start|stop|reload]"
        exit 1
        ;;
esac
exit 0
case $1 in
    s|start) echo 'start...';;
    stop) echo 'stop';;
    *) echo "USAGE: [start|stop]";;
esac

[sh]basename&dirname截取路徑和文件名&case參數選項