前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux rename: 批量修改文件名

Linux rename: 批量修改文件名

原创
作者头像
SRE扫地僧
发布2021-03-14 07:49:49
7.6K0
发布2021-03-14 07:49:49
举报
文章被收录于专栏:k8s_istio

通过 rename 快速修改文件名,Mac 和 CentOS 下命名版本不一样

Mac

Mac 下默认没有安装 rename 命令,通过 brew install rename 安装。

rename version : 1.601

创建几个测试文件

代码语言:txt
复制
$ touch k8s_deploy.yaml k8s_ingress.yaml k8s_service.yaml
$ ls
k8s_deploy.yaml  k8s_ingress.yaml k8s_service.yaml

将扩展名 .yaml 修改为 .yaml.bak

代码语言:txt
复制
$ rename 's/.yaml/.yaml.bak/' *.yaml
$ ls
k8s_deploy.yaml.bak  k8s_ingress.yaml.bak k8s_service.yaml.bak

再将扩展名改回来

代码语言:txt
复制
$ rename 's/.yaml.bak/.yaml/' *.yaml.bak
$ ls
k8s_deploy.yaml  k8s_ingress.yaml k8s_service.yaml

CentOS

CentOS 默认的 util-linux 包已经带了 rename 命令

代码语言:txt
复制
$ rename -V
rename,来自 util-linux 2.23.2
$ rpm -qf /usr/bin/rename
util-linux-2.23.2-59.el7_6.1.x86_64

将扩展名 .yaml 修改为 .yaml.bak

代码语言:txt
复制
$ ls
k8s_deploy.yaml  k8s_ingress.yaml  k8s_service.yaml
$ rename .yaml .yaml.bak *.yaml
$ ls
k8s_deploy.yaml.bak  k8s_ingress.yaml.bak  k8s_service.yaml.bak

再将扩展名改回来

代码语言:txt
复制
$ rename .yaml.bak .yaml *.yaml.bak
$ ls
k8s_deploy.yaml  k8s_ingress.yaml  k8s_service.yaml

FAQ

如果待修改的文件位于子目录中,可以结合 find 命令

代码语言:txt
复制
$ find . -type f -name "*.yaml" -exec rename .yaml .yaml.bak {} \;

reference

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Mac
  • CentOS
  • FAQ
  • reference
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档