Shell獲取目錄下文件名、后綴並操作


1.文件名、文件后綴獲取.

已有文件  FILE= "example.tar.gz",獲取文件名和文件后綴方式如下:
 
echo "${FILE%%.*}"
# => example
 
echo "${FILE%.*}"
# => example.tar
 
echo "${FILE#*.}"
# => tar.gz
 
echo "${FILE##*.}"
# => gz

2.對目錄下特定文件類型進行操作

選定某目錄下文件后綴為.sh的文件,將其改為后綴為.c的文件,腳本如下

#!/bin/bash

for file in $(ls ./)
do 
    if [ "${file##*.}" = "sh" ]; then
        mv ${file} ${file%.*}.c
    fi
done

注意點:在shell語句判斷中 [ "${file##*.}" = "sh" ]  等號兩邊都要有空格,等號兩邊變量需要用“”,中括號兩邊要有空格。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM