日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Linux Shell 批量重命名的方法

發(fā)布時間:2023/12/13 综合教程 22 生活家
生活随笔 收集整理的這篇文章主要介紹了 Linux Shell 批量重命名的方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、刪除所有的 .bak 后綴:
rename 's/.bak$//' *.bak

2、把 .jpe 文件后綴修改為 .jpg:
rename 's/.jpe$/.jpg/' *.jpe

3、把所有文件的文件名改為小寫:
rename 'y/A-Z/a-z/' *

4、將 abcd.jpg 重命名為 abcd_efg.jpg:
for var in *.jpg; do mv "$var" "${var%.jpg}_efg.jpg"; done

其中,此處涉及到shell的字符串匹配操作:

1){variable#pattern}如果pattern匹配variable的開始部分,從variable的開始處刪除字符直到第一個匹配的位置,包括匹配部分,返回剩余部分。

2){variable##pattern}如果pattern匹配variable的開始部分,從variable的開始處刪除字符直到最后一個匹配的位置,包括匹配部分,返回剩余部分。

3){variable%pattern}如果pattern匹配variable的結(jié)尾部分,從variable的結(jié)尾處刪除字符直到第一個匹配的位置,包括匹配部分,返回剩余部分。

4){variable%%pattern}

如果pattern匹配variable的結(jié)尾部分,從variable的結(jié)尾處刪除字符直到最后一個匹配的位置,包括匹配部分,返回剩余部分。

5、將 abcd_efg.jpg 重命名為 abcd_lmn.jpg:
for var in *.jpg; do mv "$var" "${var%_efg.jpg}_lmn.jpg"; done

6、把文件名中所有小寫字母改為大寫字母:
for var in `ls`; do mv -f "$var" `echo "$var" |tr a-z A-Z`; done

7、把格式 *_?.jpg 的文件改為 *_0?.jpg:
for var in `ls *_?.jpg`; do mv "$var" `echo "$var" |awk -F '_' '{print $1 "_0" $2}'`; done

8、把文件名的前三個字母變?yōu)?vzomik:
for var in `ls`; do mv -f "$var" `echo "$var" |sed 's/^.../vzomik/'`; done

9、把文件名的后四個字母變?yōu)?vzomik:
for var in `ls`; do mv -f "$var" `echo "$var" |sed 's/....$/vzomik/'`; done

10. 把.txt變成.txt_bak 的后綴

ls *.txt|xargs -n1 -i{} mv {} {}_bak
xargs -n1 –i{}類似for循環(huán),-n1意思是一個一個對象的去處理,-i{}把前面的對象使用{}取代,mv {} {}_bak相當(dāng)于mv 1.txt 1.txt_bak

find ./*.txt -exec mv {} {}_bak ;

這個命令中也是把{}作為前面find出來的文件的替代符,后面的””為”;”的脫意符,不然shell會把分號作為該行命令的結(jié)尾.

---------------------------------

#!/bin/bash
home=/home/aiverf/history/spark/log/dynamic
for var1 in `ls ${home}`; 
do 
    cd ${home}/${var1}
    for var in `ls ${home}/${var1}`; do mv "$var" `echo "$var" |awk -F '.' '{print $1 "." $3}'`; done
done

總結(jié)

以上是生活随笔為你收集整理的Linux Shell 批量重命名的方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。