目錄底下一堆各式各樣檔案,只想要擷取檔案名稱或延伸檔案名稱方便進行後續處理的話,可以利用bash內建功能來取得:
檔名 = ${檔案名稱變數%.*};
延伸檔名 = ${檔案名稱變數##*.};
for file in `ls *.*`
do
filename=${file%.*};
echo $filename;
extname=${file##*.};
echo $extname;
done
如果想要取得目錄名稱:
目錄名稱 = ${完整檔案目錄名稱%/*};
fullname=/root/pathname/filename.extname
pathname=${fullname%/*};
#