在Linux中如何使用shell批量修改文件名 |
您所在的位置:网站首页 › shell批量修改文件内容 › 在Linux中如何使用shell批量修改文件名 |
1、通过sed替换 [root@node01 wolf]# find / -type f -name wolf.log /wolf.log /tmp/wolf.log /root/wolf/wolf.log [root@node01 wolf]# sed -i ‘s#wolf#yujing#g’ find / -type f -name wolf.log [root@node01 wolf]# find / -type f -name “wolf.log” | xargs cat yujing yujing yujing [root@node01 wolf]# 2、通过变量子串替换 vi laolang.log wolf_20170806_1_wolf.jpg wolf_20170806_2_wolf.jpg wolf_20170806_3_wolf.jpg wolf_20170806_4_wolf.jpg wolf_20170806_5_wolf.jpg wolf_20170806_6_wolf.jpg wolf_20170806_7_wolf.jpg wolf_20170806_8_wolf.jpg wolf_20170806_9_wolf.jpg wolf_20170806_10_wolf.jpg [root@node01 data]# touch cat laolang.log |tr “ ” “ ” [root@node01 data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r--r-- 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg [root@node01 data]# f=wolf_20170806_10_wolf.jpg [root@node01 data]# echo $f wolf_20170806_10_wolf.jpg [root@node01 data]# echo ${f%wolf*.jpg} wolf_20170806_10_ [root@node01 data]# mv $f echo ${f%wolf*.jpg}.jpg [root@node01 data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r--r-- 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg [root@node01 data]# for f in ls *wolf.jpg ;do mv $f echo ${f%wolf*.jpg}.jpg;done [root@node01 data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r--r-- 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg 3、修改扩展名 把上面的jpg更换为log [root@node01 data]# f=wolf_20170806_10_.jpg [root@node01 data]# echo ${f/%jpg/log} wolf_20170806_10_.log [root@node01 data]# mv $f ${f/%jpg/log} [root@node01 data]# ls apache-maven-3.3.9 day1 laolang.log wolf_20170806_2_.jpg wolf_20170806_5_.jpg wolf_20170806_8_.jpg apache-maven-3.3.9-bin.tar.gz day2 wolf_20170806_10_.log wolf_20170806_3_.jpg wolf_20170806_6_.jpg wolf_20170806_9_.jpg cat day3 wolf_20170806_1_.jpg wolf_20170806_4_.jpg wolf_20170806_7_.jpg [root@node01 data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r--r-- 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg [root@node01 data]# for f in ls *.jpg ;do mv $f ${f/%jpg/log} ;done [root@node01 data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r--r-- 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.log -rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.log 责任编辑:haq
![]() 原文标题:Linux 下使用 shell 批量修改文件名的三种方法 文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。 收藏 人收藏扫一扫,分享给好友 复制链接分享 评论发布评论请先 登录 相关推荐 ARM-Linux应用开发和单片机开发的不同 针对ARM-Linux程序的开发,主要分为三类:应用程序开发、驱动程序开发、系统内核开发。针对不同种....![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |