歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> SHELL命令——取路徑和文件名:dirname basename

SHELL命令——取路徑和文件名:dirname basename

日期:2017/3/1 14:50:27   编辑:SHELL編程
SHELL命令——取路徑和文件名:dirname basename 取一個文件存儲路徑,可以用dirname。使用起來分兩種情況: 一、帶全路徑的,例:aguo@auto-test:~> dirname /home/aguo/insert.sql /home/aguo #獲得文件所在目錄 二、僅僅是文件名的,例:aguo@auto-test:~> dirname Environment . 表示路徑就是當前目錄 取一個文件名(去掉後綴名),可以用basename。這個命令使用起來貌似有些死板。你要完整地寫出後綴名。例: aguo@auto-test:~> basename insert.test.sql test insert.test.sql aguo@auto-test:~> basename insert.test.sql sql insert.test 當然,dirname和basename還有純shell的比較酷的代替方法。 dirname: aguo@auto-test:~> a=/home/aguo/insert.sql aguo@auto-test:~> echo ${a%/*} /home/aguo basename: aguo@auto-test:~> a=insert.test.sql aguo@auto-test:~> echo ${a%%.*} insert 復雜點兒的 a=/home/aguo/insert.test.sql ##只取出不帶路徑,不帶.的文件。 a=${a%%.*} && a=${a##*/} && echo $a
Copyright © Linux教程網 All Rights Reserved