perl - 使用基于 perl 的重命名命令更改以破折号开头的文件名
问题描述
rename
是一个基于 perl 的命令行工具,用于重命名多个文件。
我无意中创建了许多名称以或包含破折号或双破折号(-
或--
)的文件。当我尝试使用重命名来摆脱破折号时,例如,'--the-file-name' 使用
rename 's/-//g' --the-file-name
rename (可以理解)抱怨 'the-file-name' 不是 rename 命令的允许选项。
有没有办法告诉 rename '--the-file-name' 是文件名而不是选项。
解决方案
许多命令,包括 Perl 的rename
脚本,都支持双破折号来表示命令选项的结尾。因此,要重命名--the-file-name
为the-file-name
:
rename 's/-//g' -- --the-file-name
Perl 的Getopt::Long模块支持这一点并被rename
.
推荐阅读
- java - 使用时区标识符解析未知的 DateTime 字符串
- automation - 相当于 JVisualVM 的命令行
- wso2 - 当 Call Blocking=True 时,出现传输错误:404 错误:在代理服务中未找到
- spring-boot - 为某些默认标签聚合了 @Timed 的直方图存储桶
- android - Android:快速调用时未触发 Transformations.switchMap
- reactjs - InvalidTokenError:指定的令牌无效:e 未定义
- react-devtools - React DevTools:如何以编程方式附加组件过滤器?
- r - ggplot2 使用手动比例显示错误的颜色
- javascript - 类型不可分配给接口
- junit - 如何将黄瓜功能文件测试添加到 XML 报告文件