将regex与util-linux中的rename版本一起使用
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了将regex与util-linux中的rename版本一起使用,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1071字,纯文字阅读大概需要2分钟。
内容图文
![将regex与util-linux中的rename版本一起使用](/upload/InfoBanner/zyjiaocheng/946/d95987eca7c34d7e83242aa8670e0005.jpg)
我正在使用GNU / Linux发行版,该实用程序的重命名来自util-linux,并且我想与其一起充分利用正则表达式(Perl或POSIX).
>“ Perl”版本,语法重命名为“ s / ^ fgh / jkl /” fgh *
> util-linux版本,语法重命名为fgh jkl fgh *
如果在第一个中使用正则表达式似乎很明显,那么我就很难访问它.但是,我对第二个表达式感到困惑:我找不到任何有关正则表达式的可能用法和格式的相关文档或示例.
让我们举一个简单的例子,该目录包含:
foo_a1.ext
foo_a32.ext
foo_c18.ext
foo_h12.ext
我想使用以下两行之一的语法:
rename "foo_[a-z]([0-9]{1,2}).ext" "foo_\1.ext" *
rename "foo_[:alpha:]([:digit:]{1,2}).ext" "foo_\1.ext" *
其预期输出为:
foo_1.ext
foo_32.ext
foo_18.ext
foo_12.ext
当然这行不通!我缺少明显的东西,或者有
此工具没有使用实际正则表达式的实现方式.
(请注意,我知道在Shell解释器中使用正则表达式重命名文件的其他可能性;此问题针对重命名工具的特定版本.)
解决方法:
这是手册页:http://linux.die.net/man/1/rename.这非常简单:
rename from to file…
rename will rename the specified files by replacing the first
occurrence of from in their name by to.
我相信没有正则表达式,它只是简单的子字符串匹配.
内容总结
以上是互联网集市为您收集整理的将regex与util-linux中的rename版本一起使用全部内容,希望文章能够帮你解决将regex与util-linux中的rename版本一起使用所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。