欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用shell腳本進(jìn)行批量處理文件后綴名

 更新時(shí)間:2023年12月03日 09:35:12   作者:李昊哲小課  
這篇文章主要給大家介紹了關(guān)于如何使用shell腳本進(jìn)行批量處理文件后綴名,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

shell腳本批量處理文件后綴名

flumes收集日常完成后會(huì)對(duì)收集的文件添加.COMPLETED后綴名。

我仍然使用原文件名,于是萌生了編寫 shell 腳本批量刪除文件后綴名的想法。

效果很好,但整個(gè)腳本功能太多單一,如果想按需修改文件后綴名呢?

于是編寫了 shell 腳本批量修改文件后綴名。

shell腳本批量刪除文件后綴名

批量刪除文件后綴名·.COMPLETED

#!/bin/bash

input_dir=$1

if [ -z "$input_dir" ]; then
    echo "Usage: ./rename.sh input_directory"
    exit 1
fi

cd "$input_dir" || exit

for file in *.csv.COMPLETED; do
    newname=$(echo $file | sed 's/\.COMPLETED//')
    mv "$file" "$newname"
done

執(zhí)行腳本

shell腳本批量修改文件后綴名

#!/bin/bash
# 檢查參數(shù)數(shù)量是否正確
if [ "$#" -ne 3 ]; then
    echo "Usage: $0 <path> <old_extension> <new_extension>"
    exit 1
fi

# 提取參數(shù)
path=$1
old_extension=$2
new_extension=$3

# 查找并修改文件后綴名
find "$path" -type f -name "*.$old_extension" -exec sh -c 'mv "$0" "${0%.$1}.$2"' {} $old_extension $new_extension \;

執(zhí)行腳本

shell腳本批量修改文件名(文件名中添加字符)

腳本1

[root@localhost ~]# cat 02.sh
#!/bin/bash
#written by mofansheng@2016-02-17
path=/goodboy
[ -d $path ] && cd $path
for file in `ls`
do
 mv $file `echo $file|sed 's/\(.*\)\.\(.*\)/\1_aaa.\2/g'`
done

解釋說明:

使用sed替換,正則表達(dá)式第1個(gè)()括號(hào)里面代表文件名即\1;中間. 使用\進(jìn)行脫意,代表分隔符;

第2個(gè)括號(hào)里面代表后綴html內(nèi)容即\2;

使用此方法需要在替換中添加.符號(hào);

腳本2:

#!/bin/bash
#written by mofansheng@2016-02-17
path=/goodboy
[ -d $path ] && cd $path
for file in `ls`
do
 mv $file `echo $file|sed 's/\(.*\)\(\..*\)/\1_aaa\2/g'`
done

解釋說明:

同樣使用sed替換,正則表達(dá)式,與上面的區(qū)別在于第2個(gè)括號(hào)里面的內(nèi)容,代表.html 分隔符和后綴名為一體,替換內(nèi)容的話不需要再單獨(dú)加.點(diǎn);.分隔符同樣需要使用\進(jìn)行脫意;

shell腳本批量修改文件名(刪除文件名中字符)

方法一:for循環(huán)結(jié)合sed替換

[baby@localhost ~]$ for file in `ls *.jpg`;do mv $file `echo $file|sed 's/_finished//g'`;done;

方法二:ls結(jié)合awk,輸出交給bash執(zhí)行

[baby@localhost ~]$ ls *.jpg |awk -F "_finished" '{print "mv "$0" "$1$2""}'|bash

實(shí)際執(zhí)行的命令如下,以_finished作為分隔符,mv及變量 需要加雙引號(hào)

[baby@localhost ~]$ ls *.jpg |awk -F "_finished" '{print "mv "$0" "$1$2""}'
mv stu_102999_1_finished.jpg stu_102999_1.jpg
mv stu_102999_2_finished.jpg stu_102999_2.jpg
mv stu_102999_3_finished.jpg stu_102999_3.jpg
mv stu_102999_4_finished.jpg stu_102999_4.jpg
mv stu_102999_5_finished.jpg stu_102999_5.jpg

方法三:rename改名

[baby@localhost ~]$ rename "_finished" "" *.jpg

方法四:for循環(huán)加變量部分截取

[baby@localhost ~]$ for file in `ls *.jpg`;do mv $file `echo ${file%_finished*}.jpg`;done;

不使用echo也可以實(shí)現(xiàn)

[baby@localhost ~]$ for file in `ls *.jpg`;do mv $file ${file%_finished*}.jpg;done;

到此這篇關(guān)于利用shell腳本進(jìn)行批量處理文件后綴名的文章就介紹到這了,更多相關(guān)shell腳本處理文件后綴名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • linux命令切換目錄的使用方法

    linux命令切換目錄的使用方法

    切換目錄的方式有很多種,最常用的莫過于cd 命令了,這里介紹四個(gè)命令pushd,popd,dirs,cd -的使用方法
    2014-01-01
  • Linux 使用shell腳本處理字符串的實(shí)現(xiàn)

    Linux 使用shell腳本處理字符串的實(shí)現(xiàn)

    這篇文章主要介紹了Linux 使用shell腳本處理字符串的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • linux?shell實(shí)現(xiàn)折線圖代碼實(shí)例

    linux?shell實(shí)現(xiàn)折線圖代碼實(shí)例

    這篇文章主要給大家介紹了關(guān)于linux?shell實(shí)現(xiàn)折線圖的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用shell具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-12-12
  • shell通過遍歷輸出兩個(gè)日期范圍內(nèi)所有日期的方法

    shell通過遍歷輸出兩個(gè)日期范圍內(nèi)所有日期的方法

    這篇文章主要介紹了在shell通過遍歷輸出兩個(gè)日期范圍內(nèi)所有日期的方法,文中給出了詳細(xì)的示例代碼以及實(shí)現(xiàn)思路流程,對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-06-06
  • shell腳本中set?-e選項(xiàng)作用范圍小結(jié)

    shell腳本中set?-e選項(xiàng)作用范圍小結(jié)

    本文主要介紹了shell腳本中set?-e選項(xiàng)作用范圍小結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 通過短信發(fā)送LOG歸類號(hào)碼發(fā)送情況的shell腳本

    通過短信發(fā)送LOG歸類號(hào)碼發(fā)送情況的shell腳本

    通過短信發(fā)送LOG歸類號(hào)碼發(fā)送情況的shell腳本,有需要的朋友可以參考下
    2013-02-02
  • Shell腳本中awk指令的用法

    Shell腳本中awk指令的用法

    今天小編就為大家分享一篇關(guān)于Shell腳本中awk指令的用法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Linux下使用Rsync完成自動(dòng)化備份

    Linux下使用Rsync完成自動(dòng)化備份

    對(duì)于運(yùn)維人員來說,數(shù)據(jù)備份是最重要的工作之一,rsync就是一款通過網(wǎng)絡(luò)備份重要數(shù)據(jù)的工具/軟件。
    2018-09-09
  • Shell腳本實(shí)現(xiàn)隨機(jī)數(shù)多種方法介紹(date、random、uuid)

    Shell腳本實(shí)現(xiàn)隨機(jī)數(shù)多種方法介紹(date、random、uuid)

    這篇文章主要介紹了Shell腳本實(shí)現(xiàn)隨機(jī)數(shù)多種方法介紹,本文講解了通過時(shí)間獲得隨機(jī)數(shù)、通過內(nèi)部系統(tǒng)變量、通過系統(tǒng)內(nèi)部唯一數(shù)據(jù)生成隨機(jī)數(shù)等方法,需要的朋友可以參考下
    2014-11-11
  • linux shell命令快捷獲得系統(tǒng)幫助(一)[man-pages定義規(guī)范]

    linux shell命令快捷獲得系統(tǒng)幫助(一)[man-pages定義規(guī)范]

    linux命令幫助,一般有2種,命令自身代碼里面帶有使用幫助說明,這種一般很精簡(jiǎn),太長(zhǎng)了,程序自身的大小以及日常維護(hù)不方便。還有一種,就是帶有幫助文件,類似windows的chm格式文件。下面我說下這2種怎么樣查閱
    2015-10-10

最新評(píng)論