bash - 从文件中替换多个前面的数字
问题描述
再会,
我有一堆需要批量重命名的文件,如下所示:
01-filename1.txt > filename1.txt
02-filename2.txt > filename2.txt
32-filename3.txt > filename3.txt
322-filename4.txt > filename4.txt
31112-filename5.txt > filename5.txt
我遇到了一个使用 bash ${string#substring}字符串操作实现此目的 的示例,因此这几乎可以工作:
for i in `ls`; do mv $i ${i#[0-9]}; done
但是,这只会删除一个数字,并且添加正则表达式“+”似乎不起作用。有没有办法去除所有前面的数字字符?
谢谢!
解决方案
推荐阅读
- java - 仅给定轮廓标记,如何在 2D 地图中查找多边形?
- visual-studio - 调试 fortran mex 代码时的奇怪值
- android - 相对布局中的按钮位置变化
- excel - 打开 Excel 文件,在最后一行添加公式,保存 Excel 文件
- html - SVG 图像引用策略
- python - 如何修复 Smooch Python API 中重复的消息回复?
- php - 如何修改 Yii2 createCommand() 函数生成的结果
- excel - 如何激活主工作簿并将其放在所有打开的 Excel 文件的前面?
- java - 所有多边形都变得透明,如何修复?
- r - 在 R 中声明 2000 个函数用于遗传算法