${}用於字串的讀取,提取和替換功能,可以使用${} 提取字串
1.提取檔名:
[root@localhost test]# var=/mnt/aaa/test/test.txt
[root@localhost test]# echo $
test.txt
2.提取字尾:
[root@localhost test]# echo $
txt
3.提取檔名,不帶字尾:
[root@localhost test]# tmp=$
[root@localhost test]# echo $tmp
test.txt
[root@localhost test]# echo $
test
4.提取目錄:
[root@localhost test]# echo $
/mnt/aaa/test
5.使用檔案目錄的專有命令basename和dirname:
注:basename命令使用()
,而不是
{}
[root@localhost test]# echo $(
basename
$var)
test.txt
[root@localhost test]# echo $(
basename
$var .txt)
test
[root@localhost test]# dirname
$var
/mnt/aaa/test
[root@localhost test]# echo $(
dirname
$var)
/mnt/aaa/test
參考:shell學習.. shell 提取檔名和目錄名
在寫shell指令碼中,經常會有需要對路徑和檔名做處理。有時候犯不著用sed命令來操作。bash提供的變數操作和一些外部命令都能很好的處理。var dir1 dir2 file.txt echo file.txt 在shell指令碼中,可以使用變數來儲存這個結果,再加以利用,如file 我們將 換成...
Linux shell 提取檔名和目錄名
用於字串的讀取,提取和替換功能,可以使用 提取字串 1 提取檔名 root localhost log var dir1 dir2 file.txt root localhost log echo file.txt 2 提取字尾 root localhost log echo txt3 提取不帶字尾...
shell獲取檔名和目錄名
憬薇15940人閱讀 2018 08 23 21 23 31 對檔名或目錄名進行處理,通常的操作是由路徑中提取出檔名,從路徑中提取出目錄名,提取檔案字尾名等等。例如,從路徑 dir1 dir2 file.txt中提取也檔名file.txt,提取出目錄 dir1 dir2,提取出檔案字尾txt等。下面...