Linux批量更改文件名——Bash/Csh
文章目录
- 前言
- 一、单个文件
- 二、Bash脚本
- 三、Bash命令行
- 四、Csh
- 总结
前言
本文旨在纪录在liunx环境下如何批量更改文件名。
本文所有的例子都是为了检测出当前路径下的所有后缀是“.txt”的文件,并更改后缀为“.cpp”。
一、单个文件
对于单个文件的改名,直接在当前目录下终端或shell脚本输入“mv”命令:
mv 111.txt 111.cpp
注: 以下的所有命令一定要注意英文单引号、英文间隔号(和~同键的)的区别。
二、Bash脚本
目前linux环境多为bash环境,编写bash脚本代码如下:
#! /bin/bash
for filename in `ls *.txt`
doecho $filename | mv $filename `sed 's/.txt/.cpp/g'`
done
代码解释:
bash中是可以使用for循环的。
循环变量filename是按序检测出来的当前目录下的以.txt为后缀的文件名,每检测出来一个赋给$filename然后执行do循环中的命令。
循环中使用管道和“sed”命令,sed命令是shell语言的重要指令,建议多学习与了解。这里的sed命令就是把filename中的所有“.txt”更改为“.cpp”。
在你想要更改文件名的路径下新建脚本然后chmod赋予权限,或者在其他脚本中插入这一段命令,就可以实现批量更改文件名了。
三、Bash命令行
如果只是需要更改文件名,那只需要在当前路径下的终端命令行输入以下命令:
for f in `ls *.txt`;do echo $f | mv $f `sed 's/.txt/.cpp/g'`;done
与使用脚本的区别只是在于用“;”代替了回车,从而可以在命令行中输入与执行。
四、Csh
csh中不能用for循环,只有while和foreach循环,采用以下命令:
#! /bin/csh -f
foreach f(`ls *.txt`)mv $f `echo $f | sed 's/.txt/.cpp/g'`
如果是csh环境的linux终端,上述命令回车改为空格即可。
一定要注意`和’的区别!!!
总结
灵活使用循环命令,结合mv指令和sed指令,加上管道,即可实现批量修改文件名。
同理,用类似的方法可以对文件进行其他的批量操作。
Linux批量更改文件名——Bash/Csh相关推荐
- linux下批量改文件名命令,Linux 批量更改文件名命令
想把一部分文件加上日期序.也就是在文件名称前加上当前的年月日进行输出. 获取日期格式如下 Zianed@ubuntu:~/public_web_sSmO9OUVY1/files/image$ date ...
- linux 批量更改文件名后缀,批量修改文件名及扩展名
1.变量基础知识 ${var} 变量var的值, 与$var相同 ${var-DEFAULT}如果var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-DEFAULT} ...
- linux+批量更改文件名后缀,Linux批量更改文件后缀名
Linux下批量修改文件名 rename 的一种用法. 一:问题的提出 比如我的/home/cyq/cyq 有 m.php;1 n.php;1 俩个文件,怎么将文件名的 ;1 去掉 ...
- linux+批量更改文件名后缀,关于linux系统下批量修改文件名和后缀
总会遇到遇到处理文件的问题,比如文件后缀修改,以前都是写shell,后来发现有个更简单的方法 rename 1,在centos 下是用c 写的 rename 用法: a.txt 修改为 a.cc r ...
- linux sed名宁,Linux shell利用sed批量更改文件名的方法
微子网络与大家分享了在Linux shell中使用sed批量更改文件名的方法.希望你看完这篇文章有所收获.大家一起讨论一下. 示例 去除特定字符 目标:把2017-01-01.jpg和2018-01- ...
- linux 文件拆分 原后缀,Linux批量更改文件后缀-转载
一.rename解决 1. Ubuntu系统下 rename 's//.c//.h/' ./* 把当前目录下的后缀名为.c的文件更改为.h的文件 2. CentOS5.5系统下 rename . ...
- linux批量过去5小时前文件名,Linux批量修改文件名
Linux批量修改文件名 2016.05.12 最近半个月在疯狂地做一些实验,然后需要批量地对一些文件的名字进行修改,而手工操作极其繁琐,在之前的博文中我说到我用了Cygwin软件,今天就告诉大家如何 ...
- Linux 批量修改文件名(前缀或后缀)
@羲凡--只为了更好的活着 Linux 批量修改文件名(前缀或后缀) 有些文件的要求前缀或后缀要一样,或者批量的将文件重命名 添加前缀: for i in `ls`; do mv -f $i `ech ...
- linux批量替换文件名中的日期,rename:Linux 批量修改文件名命令,支持正则表达式...
昨天有需要要用到 Linux 批量改文件名,网上查了下,大多都是用 shell 脚本来实现的.我看了看那几句 shell 脚本,那几个 % 和 $ 的符号实在是没搞懂,也不想花时间去研究,于是又搜了搜 ...
最新文章
- 如何成为一个合格的 Java程序员
- ObjectOutputStream 和 ObjectInputStream的使用
- php一些高级函数方法
- POJ 1042 Gone Fishing【枚举+贪心】
- python计算AA制时砍价后大家需要分摊的钱
- 张雪峰考研计算机怎么选学校,考研该如何选择学校?张雪峰老师妙语连珠
- (剑指Offer)面试题46:求1+2+3+....+n
- 在Ubuntu 18.04上搭建SonarQube服务
- 简单PHP留言板之四 —— 添加留言
- Mac 在 Appstore 下载 hight Sierra 10.13
- pyside6的MQTT客户端
- 许愿墙 php源码,许愿网许愿墙 v1 共享版
- ssm教务系统网站毕业设计源码290915
- 如何用计算机完成一篇文稿制作步骤,第5章 计算机一级演示文稿制作经典教程.ppt...
- latex 中表格怎么指定编号_科学网—latex中简单表格制作+标题+编号+固定位置 - 江亿平的博文...
- 四百元左右有什么降噪耳机推荐?高性价比降噪耳机推荐
- Python系列 49 内置模块:subprocess
- java用友eai_用友EAI接口开发的问题
- ORACLE 创建表分区
- RTK和PPK技术科普
热门文章
- Python完美采集淘宝数据,含完整源代码和视频教程
- Dyson如何打造多源融合的招聘大数据平台
- SDOI2017 苹果树
- “好吃的”奥利奥 Android 8.0 正式发布:更快、更强大、更安全
- 微信小程序开发 获取手机 体验版获取不到code,需打开调试器才行?
- pycharm配置SSH远程服务器
- 在线SVG转png的网站
- reac组件,Component 与 PureComponent
- CSDN绝无仅有只此一篇:Appium+pytest+allure+jenkins如何实现多台手机连接详细教程教学
- 必不可少的代码冻结流程