首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有办法从多个文件名中删除一个字符?

有没有办法从多个文件名中删除一个字符?
EN

Ask Ubuntu用户
提问于 2020-06-14 21:14:23
回答 1查看 525关注 0票数 -1

我有一个客户端,它给了我一个古老的PowerMac G4,它有一个不启动的操作系统和即将崩溃的硬盘驱动器,可以从中检索文件。我一整天都在做这个工作,并且已经成功地检索了他的文件,但是他现在的电脑是Windows桌面,他的旧机器上的许多文件名都有一个*或冒号(:),原因是.

问题是Windows不允许文件名中的这些字符。我是否可以在我的Linux笔记本电脑上运行一个终端命令、脚本或其他类似的命令来批量删除文件中的字符,这样他就可以将这些字符复制到他的Windows桌面上,而不必手动重命名500件东西……?

谢谢!:)

EN

回答 1

Ask Ubuntu用户

发布于 2020-06-14 22:19:58

假设您在使用Bash的Ubuntu机器上:

  1. 使用ls命令在目录中列出一个坏文件名,并将文件列表命名为badnames。首先,将默认目录更改为包含坏文件的目录: cd目录ls >badname
  2. 使用tr将坏字符更改为好字符(例如,随机选择不一定与Windows兼容:: to .* to -),将好的名称放入名为goodnames:cat badname\ tr ":*“的文件中。
  3. 粘贴两个文件(检查副本等):粘贴不良名称、商品名称>实名表
  4. 将命令mv添加到pairednames中每一行的开头。
  5. 运行重命名: bash pairednames

如果将badfiles放在目录结构中而不是一个目录中的所有目录中,这就有点困难了。从顶部开始,使用find命令而不是ls

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1250367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档