LinuxGod.net
Linux大神网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

Windows中命令提示符批量修改文件名称没有直接的方法是什么?

2023年1月13日 57点热度

由于下载的很多资源的名称都有一些奇奇怪怪的平台前缀linux 批量修改 文件名,存储备份的时候就想弄掉这些前缀,美观一些。所以需要一个方法来实现批量并且快速处理。这显然是图形界面无法做到的,就必须使用命令行了。为了多平台都会用linux命令ls,就研究了Windows和Linux两个平台的操作方法,macOS可以使用Linux的方法。

需要注意的是,使用命令做这些之前最好先将两个文件移到单独的文件夹下,然后对他们做实验,以免更加乱糟糟的了!!!

Windows

Windows中,命令提示符批量修改文件名称没有直接的方法,需要写一个脚本,这样太麻烦了,不考虑它。但是Windows PowerShell可以比较简单的做到。

为了方便演示,准备有以下文件:ab.test1.txt、ab.test2.txt、test3.txt和test4.txt。

请添加图片描述

假设我们需要删除掉部分文件名称里的ab.前缀。我们可以使用以下命令(也是官方推荐的):

Get-ChildItem | Rename-Item -NewName {$_.name -replace "ab.",""}

或者更简单一点的,将Get-ChildItem替换成ls:

ls | Rename-Item -NewName {$_.name -replace "ab.",""}

这些命令会对当前目录下所有的文件进行操作。 这时候查看就可以看到当前目录下所有的文件都修改好啦ubuntu linux,如下:

请添加图片描述

linux修改文件修改时间_linux 批量修改 文件名_linux 修改hosts文件

但是这里需要注意一点,直接匹配替换只能替换设定好的部分,只替换包含了这部分内容的。其实这样也方便了使用。 举个例子来说明以下,我们还是替换那四个文件,这次直接只留下数字编号,其余前缀全部删除。

请添加图片描述

我们可以看到只修改了ab.test前缀的文件。

除此之外还要考虑到扩展带来的识别问题。例如删除[ab.n]前缀的话linux 批量修改 文件名,会因为中括号,将其识别成正则表达式,并且由于里面带有.字符,而把文件扩展名的.一起删除,而且不会删除中括号本身。这样会有点麻烦。

解决方法是:先不带左中括号进行替换,这是因为PowerShell是通过左中括号来判断是不是正则表达式的。然后再用正则表达式删除左中括号。流程如下:

请添加图片描述

Linux

Linux中做到这个简直是太简单了。使用以下命令即可:

rename 's/被替换的字符/替换的字符/' *.txt

这里不论是被替换的字符和替换的字符都不需要加引号,只需要放在三个斜杠之间。*.txt表示需要修改文件名称的文件,星号*表示任意字符,那么这里表示所有.txt后缀的文件。

例如想删除test1.txt、test2.txt、test3.txt和test4.txt的test前缀,使用rename 's/test//' *.txt就好,演示如下:

zhonguncle@ubuntu:~/files$ ls
test1.txt  test2.txt  test3.txt  test4.txt
zhonguncle@ubuntu:~/files$ rename 's/test//' *.txt
zhonguncle@ubuntu:~/files$ ls
1.txt  2.txt  3.txt  4.txt

那么遇到中括号这种情况,也可以非常简单的通过反斜杠来将元字符转换成文字字符处理。例如Windows中遇到的那个情况,只需要以下操作即可:

zhonguncle@ubuntu:~/files$ ls
'[ab.n]test1.txt'  '[ab.n]test2.txt'   test3.txt   test4.txt
zhonguncle@ubuntu:~/files$ rename 's/[ab.n]//' *.txt
zhonguncle@ubuntu:~/files$ ls
test1.txt  test2.txt  test3.txt  test4.txt

只通过简单的rename 's/[ab.n]//' *.txt就可以做到啦,不需要几步操作来实现这一点。

研究Windows的方法花了一点时间,希望能帮到有需要的人!

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 命令提示符
最后更新:2023年1月13日

Linux大神网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

文章评论

您需要 登录 之后才可以评论

Linux大神网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
Linux系统用户系统上的三种类型的帐户的介绍 Linux下的开机启动设置方法是什么?脚本或服务 谷歌更新Linux内核构建的公共内核库:添加对kokoro作业的支持 linux下mysql中可以使用REVOKE语句来删除某个用户的权限 内核的角度来看,调用hotplug和通常的hotplug环境 Linux系统在开机的时候自动加载某些脚本或系统服务 如何在Linux上安装Diablo3操作系统Diablo3 RedHatLinux软件安装包软件后缀为.rpm最初 1.1.4Linux的内核版本和发行版本是什么意思?(图) Linux系统的安装-Ubuntu开启虚拟机安装过程默认注意事项 hello_exit函数代码存放在__init段中(一) 英伟达将LinuxGPU内核模块作为开放源码/MIT双重许可证(图) virtualboxlinux官方版免费、小巧,同时支持Windows、Linux和Mac系统主机 Linux平台下的嵌入式软件要具备说明技能吗? 图解linuxlinux内核结构框图对内核框图有个总体的把握 linux虚拟机的安装步骤是什么?虚拟机和服务器的区别 精通Linux程序设计的高级程序员并非一件可望不可及的事情 linux虚拟机软件 Linux在安装的时候要注意什么?Linux安装注意事项 Python都有哪些应用,学习完成Python后能的工作方向 微软考虑用Rust开发内核的Linux内核-Hartman
Linux5.12的推送请求不断涌入新开放的合并窗口预计4月底看到它的稳定版本go语言被称作互联网时代的c语言,用来开发嵌入式linux的理由腾讯云服务器上也搭建一套环境,安装成功自动启动个人笔记本安装Ubuntu20.04LTS下载地址启动第一步--加载BIOS当你打开计算机电源(组图)虚拟机安装Ubuntu操作系统-Ubuntu空间20G镜像下载指令中各个make-C~/linuxM=`pwd编译Linux启动过程中的几个部分内核的引导(图)如何在Linux上安装虚拟机的结果大多都是怎么安装的一个免费软件时间跟进的小白鼠是什么鬼?专题计算机是如何启动的?、内核操作系统的启动流程学习Linux最简单、最实用的环境就是虚拟机环境(上)基于命令修改文件的权限命令-ld1.Linux磁盘分区和目录Linux发行版本之间的差别很少?国内性价比很高的Linux虚拟主机系统安装的流程是什么?Linux下修改文件权限的权限与所有权的实现就显得很有必要linux到底难不难学呢?推荐可以查看Linux命令大全Linux中修改文件权限的命令、创建者所在组、所有人Linux的内核放在了哪里?/boot的启动目录一览阿里云>社区>主题地图S>查看存储推荐
腾讯云服务器上也搭建一套环境,安装成功自动启动 如何知道自己的Linux内核版本的几种方法?方法 1.1.4Linux的内核版本和发行版本是什么意思?(图) 英伟达将LinuxGPU内核模块作为开放源码/MIT双重许可证(图) 【Linux基础知识】Linux内核版本命令(两种方法) 如何在Linux上运行.exe文件的唯一方法?-八维教育 版本号的信息有以下几个:内核版本号编译器发行系统版本号 如何吸引厂商开发更多更丰富的Linux软件问题 Linux上运行Windows可执行文件和运行可执行文件的基本信息开始了 Linux中的用户权限管理方式 和VisualStudioCode如何使用VSCode运行C和C++程序 关于Linux系统版本命令的一些看法及解决办法的通知 学习Linux最简单、最实用的环境就是虚拟机环境(上) 审计Linux系统日志可以提供有关网络事件的重要信息(图) 0005编程精粹-Microsoft编写优质无错程序秘诀(bjchenxu) linux访问ftp服务器命令 【1024】后端技术学习路线思维导图,看这一篇就够了! 文件传输协议:文件传输的话控制端口21数据端口:20 Linux下的安装zip解压功能及安装unzip教程 防火墙和SELinux关闭防火墙及SELinux链接进行下载地址
标签聚合
unix linux服务器 文件目录 命令模式 电脑 sudo linux系统 虚拟机 shell 软件
书籍
课程
技术群
技术干货大合集↓
  • 2023年2月 / 12篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇

COPYRIGHT © 2023 linuxgod.net ALL RIGHTS RESERVED.