仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 537|回复: 8
打印 上一主题 下一主题

[CentOS(社区)] 带来一篇CentOS下的rename下令

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 21:11:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!Dos/Windows下,对文件更名用rename。而书上说,Linux下对文件或目次更名该用mv。我一向也是如许做的,却疏忽了Linux下也有个叫rename的下令。都是rename,但功效上就有点差别了。Linux下的rename更像批量更名的工具,是util-linux套件中供应的。

1、基础功效
从mv和rename下令的man文档中,能够看到以下信息:

援用
mv-move(rename)files
rename-Renamefiles



也就是说,mv也能用于更名,但不克不及完成批量处置(更名时,不撑持*等标记的),而rename能够。
rename利用的格局:

$renamefoofoo0foo?

rename必要供应三个参数,然后才干决意终极了局。
摹拟一下man文档的例子,原文件:
援用
$foriin`seq100`;dotouchfoo$i;done
$ls
foo1foo18foo27foo36foo45foo54foo63foo72foo81foo90
foo10foo19foo28foo37foo46foo55foo64foo73foo82foo91
foo100foo2foo29foo38foo47foo56foo65foo74foo83foo92
foo11foo20foo3foo39foo48foo57foo66foo75foo84foo93
foo12foo21foo30foo4foo49foo58foo67foo76foo85foo94
foo13foo22foo31foo40foo5foo59foo68foo77foo86foo95
foo14foo23foo32foo41foo50foo6foo69foo78foo87foo96
foo15foo24foo33foo42foo51foo60foo7foo79foo88foo97
foo16foo25foo34foo43foo52foo61foo70foo8foo89foo98
foo17foo26foo35foo44foo53foo62foo71foo80foo9foo99



更名了局:
(白色是没有修改的,蓝色是有修改的一局部)
援用
$renamefoofoo0foo?
$ls
foo01foo100foo20foo30foo40foo50foo60foo70foo80foo90
foo02foo11foo21foo31foo41foo51foo61foo71foo81foo91
foo03foo12foo22foo32foo42foo52foo62foo72foo82foo92
foo04foo13foo23foo33foo43foo53foo63foo73foo83foo93
foo05foo14foo24foo34foo44foo54foo64foo74foo84foo94
foo06foo15foo25foo35foo45foo55foo65foo75foo85foo95
foo07foo16foo26foo36foo46foo56foo66foo76foo86foo96
foo08foo17foo27foo37foo47foo57foo67foo77foo87foo97
foo09foo18foo28foo38foo48foo58foo68foo78foo88foo98
foo10foo19foo29foo39foo49foo59foo69foo79foo89foo99
$renamefoofoo0foo??
$ls
foo001foo011foo021foo031foo041foo051foo061foo071foo081foo091
foo002foo012foo022foo032foo042foo052foo062foo072foo082foo092
foo003foo013foo023foo033foo043foo053foo063foo073foo083foo093
foo004foo014foo024foo034foo044foo054foo064foo074foo084foo094
foo005foo015foo025foo035foo045foo055foo065foo075foo085foo095
foo006foo016foo026foo036foo046foo056foo066foo076foo086foo096
foo007foo017foo027foo037foo047foo057foo067foo077foo087foo097
foo008foo018foo028foo038foo048foo058foo068foo078foo088foo098
foo009foo019foo029foo039foo049foo059foo069foo079foo089foo099
foo010foo020foo030foo040foo050foo060foo070foo080foo090foo100



该例子给出了两种文件批量重定名的用法:
援用
第一个参数:被交换失落的字符串
第二个参数:交换成的字符串
第三个参数:婚配要交换的文件形式



rename撑持通配符,基础的通配符有以下几个:
援用
?可替换单个字符
*可替换多个字符
[charset]可替换charset会合的恣意单个字符



2、其他例子
看看*的感化:
援用
$rm-f*
$foriin`seq100`;dotouchfoo$i;done
$renamefoofoo0foo*
$ls
foo01foo018foo027foo036foo045foo054foo063foo072foo081foo090
foo010foo019foo028foo037foo046foo055foo064foo073foo082foo091
foo0100foo02foo029foo038foo047foo056foo065foo074foo083foo092
foo011foo020foo03foo039foo048foo057foo066foo075foo084foo093
foo012foo021foo030foo04foo049foo058foo067foo076foo085foo094
foo013foo022foo031foo040foo05foo059foo068foo077foo086foo095
foo014foo023foo032foo041foo050foo06foo069foo078foo087foo096
foo015foo024foo033foo042foo051foo060foo07foo079foo088foo097
foo016foo025foo034foo043foo052foo061foo070foo08foo089foo098
foo017foo026foo035foo044foo053foo062foo071foo080foo09foo099



再看看[charset]的感化:
援用
$rm-f*
$foriin`seq100`;dotouchfoo$i;done
$renamefoofoo0foo[9]*
$ls
foo09foo099foo17foo26foo35foo44foo53foo62foo71foo80
foo090foo1foo18foo27foo36foo45foo54foo63foo72foo81
foo091foo10foo19foo28foo37foo46foo55foo64foo73foo82
foo092foo100foo2foo29foo38foo47foo56foo65foo74foo83
foo093foo11foo20foo3foo39foo48foo57foo66foo75foo84
foo094foo12foo21foo30foo4foo49foo58foo67foo76foo85
foo095foo13foo22foo31foo40foo5foo59foo68foo77foo86
foo096foo14foo23foo32foo41foo50foo6foo69foo78foo87
foo097foo15foo24foo33foo42foo51foo60foo7foo79foo88
foo098foo16foo25foo34foo43foo52foo61foo70foo8foo89



不难了解吧,找情况测试一下就分明了。用rename能够削减局部写for轮回的事情,仍是对照便利的。

欢迎大家来到仓酷云论坛!
海妖 该用户已被删除
沙发
发表于 2015-1-17 06:47:36 | 只看该作者
Linux?最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以Linux操作系统有着广泛的应用空间。
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-1-22 05:52:49 | 只看该作者
为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。
不帅 该用户已被删除
地板
发表于 2015-1-30 23:29:50 | 只看该作者
和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。
柔情似水 该用户已被删除
5#
发表于 2015-2-6 17:10:37 | 只看该作者
再次,Linux是用C语言编写的,我们有学习C语言的基础,读程序和编写代码方面存在的困难小一点,也是我们能较快掌握的原因之一。?
再现理想 该用户已被删除
6#
发表于 2015-2-17 19:04:33 | 只看该作者
用户下达的命令解释给系统去执行,并将系统传回的信息再次解释给用户,估shell也称为命令解释器,有关命令的学习可参考论坛相关文章,精通英文也是学习Linux的关键。
小魔女 该用户已被删除
7#
发表于 2015-3-5 22:43:37 | 只看该作者
在学习的过程中,我们用的是VM虚拟机,开始时真的不真的该怎么去做,特别是我的是命令窗口界面,别人的是图形界面,我都不知道怎么调过来。
精灵巫婆 该用户已被删除
8#
发表于 2015-3-12 16:35:42 | 只看该作者
笔者五分钟后就给出了解决方法: “首先备份原文件到其他目录,然后删掉/usr/local/unispim/unispimsp.ksc,编辑 /usr/local/unispim/unispimsp.ini,最后重启动计算机
山那边是海 该用户已被删除
9#
发表于 2015-3-20 00:41:01 | 只看该作者
这也正是有别的OS得以存在的原因,每个系统都有其自身的优点。?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 09:54

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表