位置: IT常识 - 正文

详解Linux系统中rename命令的使用方法(linux的rz)

发布时间:2023-11-28
推荐整理分享详解Linux系统中rename命令的使用方法(linux的rz),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux r,linux /r/n,linux r,linux -r -r,linux -rn,linuxrc,linux r,linux r,内容如对您有帮助,希望把文章链接给更多的朋友!

Dos/Windows下,对文件改名用rename。而书上说,Linux下对文件或目录改名该用mv。我一直也是这样做的,却忽略了Linux下也有个叫rename的命令。都是rename,但功能上就有点差异了。Linux下的rename更像批量改名的工具,是util-linux套件中提供的。

从mv和rename命令的man文档中,可以看到如下信息:

代码如下:mv-move (rename) filesrename-Rename files

也就是说,mv也能用于改名,但不能实现批量处理(改名时,不支持*等符号的),而rename可以。rename使用的格式:

代码如下:$ rename foo foo0 foo?

rename需要提供三个参数,然后才能决定最终结果。模拟一下man文档的例子,原文件:

代码如下:$ for i in `seq 100`;do touch foo$i;done$ ls

foo1 foo18 foo27 foo36 foo45 foo54 foo63 foo72 foo81 foo90foo10 foo19 foo28 foo37 foo46 foo55 foo64 foo73 foo82 foo91foo100 foo2 foo29 foo38 foo47 foo56 foo65 foo74 foo83 foo92foo11 foo20 foo3 foo39 foo48 foo57 foo66 foo75 foo84 foo93foo12 foo21 foo30 foo4 foo49 foo58 foo67 foo76 foo85 foo94foo13 foo22 foo31 foo40 foo5 foo59 foo68 foo77 foo86 foo95foo14 foo23 foo32 foo41 foo50 foo6 foo69 foo78 foo87 foo96foo15 foo24 foo33 foo42 foo51 foo60 foo7 foo79 foo88 foo97foo16 foo25 foo34 foo43 foo52 foo61 foo70 foo8 foo89 foo98foo17 foo26 foo35 foo44 foo53 foo62 foo71 foo80 foo9 foo99

改名结果:(红色是没有改动的,蓝色是有改动的一部分)引用

代码如下:$ rename foo foo0 foo?$ ls详解Linux系统中rename命令的使用方法(linux的rz)

foo01 foo100 foo20 foo30 foo40 foo50 foo60 foo70 foo80 foo90foo02 foo11 foo21 foo31 foo41 foo51 foo61 foo71 foo81 foo91foo03 foo12 foo22 foo32 foo42 foo52 foo62 foo72 foo82 foo92foo04 foo13 foo23 foo33 foo43 foo53 foo63 foo73 foo83 foo93foo05 foo14 foo24 foo34 foo44 foo54 foo64 foo74 foo84 foo94foo06 foo15 foo25 foo35 foo45 foo55 foo65 foo75 foo85 foo95foo07 foo16 foo26 foo36 foo46 foo56 foo66 foo76 foo86 foo96foo08 foo17 foo27 foo37 foo47 foo57 foo67 foo77 foo87 foo97foo09 foo18 foo28 foo38 foo48 foo58 foo68 foo78 foo88 foo98foo10 foo19 foo29 foo39 foo49 foo59 foo69 foo79 foo89 foo99

代码如下:$ rename foo foo0 foo??$ ls

foo001 foo011 foo021 foo031 foo041 foo051 foo061 foo071 foo081 foo091foo002 foo012 foo022 foo032 foo042 foo052 foo062 foo072 foo082 foo092foo003 foo013 foo023 foo033 foo043 foo053 foo063 foo073 foo083 foo093foo004 foo014 foo024 foo034 foo044 foo054 foo064 foo074 foo084 foo094foo005 foo015 foo025 foo035 foo045 foo055 foo065 foo075 foo085 foo095foo006 foo016 foo026 foo036 foo046 foo056 foo066 foo076 foo086 foo096foo007 foo017 foo027 foo037 foo047 foo057 foo067 foo077 foo087 foo097foo008 foo018 foo028 foo038 foo048 foo058 foo068 foo078 foo088 foo098foo009 foo019 foo029 foo039 foo049 foo059 foo069 foo079 foo089 foo099foo010 foo020 foo030 foo040 foo050 foo060 foo070 foo080 foo090 foo100

该例子给出了两种文件批量重命名的用法:引用第一个参数:被替换掉的字符串第二个参数:替换成的字符串第三个参数:匹配要替换的文件模式

rename支持通配符,基本的通配符有以下几个:引用? 可替代单个字符* 可替代多个字符[charset] 可替代charset集中的任意单个字符

看看*的作用:引用$ rm -f *$ for i in `seq 100`;do touch foo$i;done$ rename foo foo0 foo*$ lsfoo01 foo018 foo027 foo036 foo045 foo054 foo063 foo072 foo081 foo090foo010 foo019 foo028 foo037 foo046 foo055 foo064 foo073 foo082 foo091foo0100 foo02 foo029 foo038 foo047 foo056 foo065 foo074 foo083 foo092foo011 foo020 foo03 foo039 foo048 foo057 foo066 foo075 foo084 foo093foo012 foo021 foo030 foo04 foo049 foo058 foo067 foo076 foo085 foo094foo013 foo022 foo031 foo040 foo05 foo059 foo068 foo077 foo086 foo095foo014 foo023 foo032 foo041 foo050 foo06 foo069 foo078 foo087 foo096foo015 foo024 foo033 foo042 foo051 foo060 foo07 foo079 foo088 foo097foo016 foo025 foo034 foo043 foo052 foo061 foo070 foo08 foo089 foo098foo017 foo026 foo035 foo044 foo053 foo062 foo071 foo080 foo09 foo099

再看看[charset]的作用:引用

代码如下:$ rm -f *$ for i in `seq 100`;do touch foo$i;done$ rename foo foo0 foo[9]*$ ls

foo09 foo099 foo17 foo26 foo35 foo44 foo53 foo62 foo71 foo80foo090 foo1 foo18 foo27 foo36 foo45 foo54 foo63 foo72 foo81foo091 foo10 foo19 foo28 foo37 foo46 foo55 foo64 foo73 foo82foo092 foo100 foo2 foo29 foo38 foo47 foo56 foo65 foo74 foo83foo093 foo11 foo20 foo3 foo39 foo48 foo57 foo66 foo75 foo84foo094 foo12 foo21 foo30 foo4 foo49 foo58 foo67 foo76 foo85foo095 foo13 foo22 foo31 foo40 foo5 foo59 foo68 foo77 foo86foo096 foo14 foo23 foo32 foo41 foo50 foo6 foo69 foo78 foo87foo097 foo15 foo24 foo33 foo42 foo51 foo60 foo7 foo79 foo88foo098 foo16 foo25 foo34 foo43 foo52 foo61 foo70 foo8 foo89

Linux的rename 命令有两个版本,一个是C语言版本的,一个是Perl语言版本的,判断方法:输入man rename 看到第一行是RENAME(1) Linux Programmer’s Manual RENAME(1)这个就是C语言版本的 ---我的就是C语言版本而如果出现的是RENAME(1) Perl Programmers Reference Guide RENAME(1)这个就是Perl版本的了

C语言版本格式:rename 原字符串 新字符串 文件名样例1:目录test下存在两个文件:a_01、a_02,若需要将文件名中的a替换为b,其他部分保持不变,则(1) 若当前位于test目录下,则执行 rename a b *(2) 若当前位于test的父目录,则执行 rename a b test/*

Perl语言版本格式:rename 's/原字符串/新字符串/' 文件名样例2:题目如样例1,则(1) 若当前位于test目录下,则执行 rename 's/a/b/' *(2) 若当前位于test的父目录,则执行 rename 's/a/b' test/*脚本实现方法:

代码如下:find -name "a*" -print | while read name do echo $name rename 's/a/b/' $name done
本文链接地址:https://www.jiuchutong.com/zhishi/267397.html 转载请保留说明!

上一篇:Mac怎么设置默认文本打开方式(mac怎么还原出厂设置)

下一篇:BIOS 中英文对照表 BIOS设置参考(bios中英文对照表图新版)

  • opporeno6什么处理器(oppo reno6cpu)

    opporeno6什么处理器(oppo reno6cpu)

  • 荣耀30和华为nova7有哪些区别(荣耀30和华为nova7屏幕是不是一样的)

    荣耀30和华为nova7有哪些区别(荣耀30和华为nova7屏幕是不是一样的)

  • iphone12过热怎么办(iphone12 过热)

    iphone12过热怎么办(iphone12 过热)

  • 荣耀x10如何显示电量(荣耀x10如何显示电池容量)

    荣耀x10如何显示电量(荣耀x10如何显示电池容量)

  • 在抖音关注的人注销了账户还能看到吗(在抖音关注的人发新作品怎么才能第一时间告诉我)

    在抖音关注的人注销了账户还能看到吗(在抖音关注的人发新作品怎么才能第一时间告诉我)

  • 华为mate30国外能用吗(华为mate30pro在国外可以用谷歌软件吗)

    华为mate30国外能用吗(华为mate30pro在国外可以用谷歌软件吗)

  • 华为手机怎样删除不需要的软件(华为手机怎样删除桌面上的软件)

    华为手机怎样删除不需要的软件(华为手机怎样删除桌面上的软件)

  • 华为p30防水吗(华为p30防水吗,掉水里了怎么办)

    华为p30防水吗(华为p30防水吗,掉水里了怎么办)

  • 微信部分功能限制多久(微信功能限制复审多久出结果)

    微信部分功能限制多久(微信功能限制复审多久出结果)

  • 快看点提现失败是什么原因(快看点为什么提现被退回)

    快看点提现失败是什么原因(快看点为什么提现被退回)

  • 耳机usb接口和圆孔接口的区别(耳机usb接口什么样)

    耳机usb接口和圆孔接口的区别(耳机usb接口什么样)

  • 微信朋友圈怎么设置一些人可看(微信朋友圈怎么定位到别的城市)

    微信朋友圈怎么设置一些人可看(微信朋友圈怎么定位到别的城市)

  • iphonex来电时如何拒绝(iphonex来电设置)

    iphonex来电时如何拒绝(iphonex来电设置)

  • 计算机最广泛的应用是什么(计算机最广泛的字符编码)

    计算机最广泛的应用是什么(计算机最广泛的字符编码)

  • 宽带亮红灯网用不了是什么情况(宽带网显示红灯)

    宽带亮红灯网用不了是什么情况(宽带网显示红灯)

  • 在微机系统中所谓接口电路通常是指(在微机系统中什么的存储量最大)

    在微机系统中所谓接口电路通常是指(在微机系统中什么的存储量最大)

  • 我的其他qq账号怎么弄出来(qq我的其他账号在哪里能看到)

    我的其他qq账号怎么弄出来(qq我的其他账号在哪里能看到)

  • 苹果蓝牙耳机左耳没声音了(苹果蓝牙耳机左边声音小,右边声音正常)

    苹果蓝牙耳机左耳没声音了(苹果蓝牙耳机左边声音小,右边声音正常)

  • 淘宝怎么提醒卖家补货(淘宝怎么设置提醒预售)

    淘宝怎么提醒卖家补货(淘宝怎么设置提醒预售)

  • icould内存满了怎么办(icloud储存空间满了怎么办)

    icould内存满了怎么办(icloud储存空间满了怎么办)

  • 微信不登录还会有步数吗(微信不登录还会计步吗)

    微信不登录还会有步数吗(微信不登录还会计步吗)

  • 苹果x无面容是什么意思(苹果x无面容是什么机子)

    苹果x无面容是什么意思(苹果x无面容是什么机子)

  • 小米x5怎么恢复出厂设置(小米5x怎么恢复出厂设置不成功)

    小米x5怎么恢复出厂设置(小米5x怎么恢复出厂设置不成功)

  • 小米拦截电话在哪里设置(小米拦截电话在哪里取消设置)

    小米拦截电话在哪里设置(小米拦截电话在哪里取消设置)

  • 学会计实操有用吗?(学会计实操能相当于几年经验吗诚选恒企教育好)

    学会计实操有用吗?(学会计实操能相当于几年经验吗诚选恒企教育好)

  • vlig是什么(vili是什么意思)

    vlig是什么(vili是什么意思)

  • iPhone微信如何发动态表情(苹果微信怎么发)

    iPhone微信如何发动态表情(苹果微信怎么发)

  • ppt切换速度为中速(ppt中如何设置切换速度为中速)

    ppt切换速度为中速(ppt中如何设置切换速度为中速)

  • pandas中Series常见属性有哪些?(pandas常用)

    pandas中Series常见属性有哪些?(pandas常用)

  • 资产减值的含义
  • 四川网上电子税务局
  • 机票抵税申报表咋填
  • 股东借款利息收入放什么科目
  • 企业所得税财务费用借款利息扣除标准
  • 定额发票遗失情况说明怎么写
  • 个人房产房租收入怎么算
  • 营业收入管理也是企业财务管理的基本内容
  • 应收账款转销怎么记账
  • 境内企业得到境外企业的红利是否需要缴纳所得税?
  • 出口退税要交企业所得吗
  • 如何确定增值税
  • 支付印花税计入什么科目
  • 免税农产品发票可以抵扣么
  • 重点税源财务指标有哪些
  • 少扣个税多付工资违法吗
  • 利润出现负数怎么调整
  • 电信猫光信号灯不亮
  • 投资理财产品的优势和劣势
  • 从银行提取备用金填制什么凭证
  • 广告费递延几年
  • 增值税专用发票丢了怎么补救
  • 个体户生产经营费用与家庭生活费用无法划分
  • 重置edge浏览器设置
  • 销售补差是怎么算的
  • 政府财政会计核算基础是什么
  • 增值税检查调整科目还在用吗
  • e卡 叠加
  • 2023前端面试题csdn
  • 计提企业税费和缴纳分录怎么做
  • 固定资产净残值率是多少
  • vue2计算属性和vue3的计算属性的区别
  • 手把手教你安装技嘉b550 master主板
  • mess指令
  • 微信自定义菜单在哪里
  • 工业企业总产值怎么算
  • 股东分红算不算股利
  • 如何做进项税额转出处理
  • 基本户不注销会扣钱吗
  • 作价出资土地与出让区别
  • mysql无法添加数据
  • 教育培训业能享受补贴吗
  • 工会经费和工会会费的区别与联系
  • 哪些增值税可以免税
  • 年化收益率怎么算收益率
  • 漏缴增值税处罚规定
  • 发票不按实际数量单价开 但金额一致
  • 厨师的工资计入什么费用
  • 发票未到成本如何做分录
  • 哪些费用是不可抵扣的
  • 企业职工福利费支出包括哪些内容
  • 工会经费缴纳会计分录
  • 固定资产管理台账管理制度
  • centos添加用户到组
  • c盘满了怎么释放空间
  • jsp环境变量配置的步骤
  • win7鼠标右键菜单选项太多怎么删除
  • explorer.exe进程出错
  • 如何关掉开机自检硬盘
  • linux执行sh文件显示不存在
  • 高危KB3045645!Win7/8.1别安装这个补丁
  • win7系统纯净版和旗舰版
  • linux在实际工作中的应用
  • linux 内存文件夹
  • Linux安装anaconda
  • cocos2dx在暂停某些元素后导致crash问题
  • java 解析javascript
  • exec方法
  • easyui combobox设置值
  • Tree、Unformat、Vsafe命令的区别与使用说明
  • nodejs跳转到指定页面
  • 动态修改ip
  • unity3d移动物体
  • nodejs深入浅出pdf百度云
  • 深入理解计算机系统
  • 用AutoCompleteTextView实现自动提示
  • 铁岭医保网上怎么交费
  • 外商投资的企业
  • 江西省国家税务局李德平
  • 西安市灵活就业社保缴费截止时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号