linux批量文件重命名命令_shell重命名文件指令

linux批量文件重命名命令_shell重命名文件指令SYNOPSISrenamefromtofile…from表示需要替换或者处理的字符,比如文件的扩展名,文件名.to表示对from处理之后的结果。file表示目标文件。[[emailprotected]tmp]#lshello_10_2016-03-17.loghello_4_2016-03-17.loghello_8_2016-03-17.loghello_1_20…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

SYNOPSIS

rename from to file…

from 表示需要替换或者处理的字符,比如文件的扩展名,文件名.

to 表示对from处理之后的结果。

file 表示目标文件。

[[email protected] tmp]# ls

hello_10_2016-03-17.log hello_4_2016-03-17.log hello_8_2016-03-17.log

hello_1_2016-03-17.log hello_5_2016-03-17.log hello_9_2016-03-17.log

hello_2_2016-03-17.log hello_6_2016-03-17.log

hello_3_2016-03-17.log hello_7_2016-03-17.log

使用rename将.log改为.jpg

[[email protected] tmp]# rename “.log” “.jpg” *

[[email protected] tmp]# ls

hello_10_2016-03-17.jpg hello_4_2016-03-17.jpg hello_8_2016-03-17.jpg

hello_1_2016-03-17.jpg hello_5_2016-03-17.jpg hello_9_2016-03-17.jpg

hello_2_2016-03-17.jpg hello_6_2016-03-17.jpg

hello_3_2016-03-17.jpg hello_7_2016-03-17.jpg

2.使用sed:

[[email protected] tmp]# ls|sed -nr “s#(^.*[0-9].)(.*)#mv & \1log#gp”

mv hello_10_2016-03-17.jpg hello_10_2016-03-17.log

mv hello_1_2016-03-17.jpg hello_1_2016-03-17.log

mv hello_2_2016-03-17.jpg hello_2_2016-03-17.log

mv hello_3_2016-03-17.jpg hello_3_2016-03-17.log

mv hello_4_2016-03-17.jpg hello_4_2016-03-17.log

mv hello_5_2016-03-17.jpg hello_5_2016-03-17.log

mv hello_6_2016-03-17.jpg hello_6_2016-03-17.log

mv hello_7_2016-03-17.jpg hello_7_2016-03-17.log

mv hello_8_2016-03-17.jpg hello_8_2016-03-17.log

mv hello_9_2016-03-17.jpg hello_9_2016-03-17.log

最后通过管道给bash处理:

[[email protected] tmp]# ls|sed -nr “s#(^.*[0-9].)(.*)#mv & \1log#gp”|bash

[[email protected] tmp]# ls

hello_10_2016-03-17.log hello_4_2016-03-17.log hello_8_2016-03-17.log

hello_1_2016-03-17.log hello_5_2016-03-17.log hello_9_2016-03-17.log

hello_2_2016-03-17.log hello_6_2016-03-17.log

hello_3_2016-03-17.log hello_7_2016-03-17.log

3.使用for再配合替换字符串

[[email protected] tmp]# vim rename.sh

#!/bin/bash

#This script is use to rename files

for name in `ls *.log`;

do

echo “mv $name ${name/.log/.txt}”

done

最后通过bash:

[[email protected] tmp]# ./rename.sh |bash

[[email protected] tmp]# ls

hello_10_2016-03-17.txt hello_4_2016-03-17.txt hello_8_2016-03-17.txt

hello_1_2016-03-17.txt hello_5_2016-03-17.txt hello_9_2016-03-17.txt

hello_2_2016-03-17.txt hello_6_2016-03-17.txt rename.sh

hello_3_2016-03-17.txt hello_7_2016-03-17.txt

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197409.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • php sigpipe,遭遇SIGPIPE[转]

    php sigpipe,遭遇SIGPIPE[转]转自:http://www.diybl.com/course/3_program/c++/cppjs/20090831/173152.html我写了一个服务器程序,在Windows下在cygwin环境编译后执行,然后用C#写了多线程客户端进行压力测试.程序一直运行正常.但当在Linux下测试时,总是莫名退出.最后跟踪到是write调用导致退出.用gdb执行程序,退出时提示”Broken…

    2022年5月30日
    36
  • 26524中位数第二人生_计数原理与排列组合是选修几

    26524中位数第二人生_计数原理与排列组合是选修几洛谷P2606 [ZJOI2010]排列计数(组合数 dp)

    2022年4月20日
    113
  • conductor使用redis[通俗易懂]

    conductor使用redis[通俗易懂]1.使用gradlebuild命令在文件夹./server/build/libs/中生成conductor-server-all-VERSION.jar**2.server.properties配置文件中配置db=redisworkflow.dynomite.cluster.hosts=222.187.245.149:6379:us-east-1equeues.dynomite.n…

    2025年8月2日
    5
  • Python快速编程入门课后习题答案「建议收藏」

    Python快速编程入门课后习题答案「建议收藏」文章目录前言第一章一、填空题二、判断题三、选择题四、简答题第二章一、填空题二、判断题三、选择题四、简答题第三章一、填空题二、判断题三、选择题四、简答题第四章一、单选题二、判断题三、填空题四、程序分析题第五章一、选择题二、判断题三、填空题四、简答题五、程序分析题第六章一、单选题二、判断题三、填空题四、简答题五、程序分析题第七章一、单选题二、判断题三、填空题四、简答题五、程序分析题第八章一、单选题二、…

    2022年6月3日
    157
  • Salesforce中的单点登录简介「建议收藏」

    Salesforce中的单点登录简介「建议收藏」单点登录的定义引自维基百科:单点登录(英语:Singlesignon,缩写为SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,

    2022年8月5日
    7
  • java 多线程死锁案例

    java 多线程死锁案例java 多线程死锁案例

    2022年4月24日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号