我有一个客户端,它给了我一个古老的PowerMac G4,它有一个不启动的操作系统和即将崩溃的硬盘驱动器,可以从中检索文件。我一整天都在做这个工作,并且已经成功地检索了他的文件,但是他现在的电脑是Windows桌面,他的旧机器上的许多文件名都有一个*
或冒号(:
),原因是.
问题是Windows不允许文件名中的这些字符。我是否可以在我的Linux笔记本电脑上运行一个终端命令、脚本或其他类似的命令来批量删除文件中的字符,这样他就可以将这些字符复制到他的Windows桌面上,而不必手动重命名500件东西……?
谢谢!:)
发布于 2020-06-14 22:19:58
假设您在使用Bash的Ubuntu机器上:
ls
命令在目录中列出一个坏文件名,并将文件列表命名为badnames
。首先,将默认目录更改为包含坏文件的目录: cd目录ls >badnametr
将坏字符更改为好字符(例如,随机选择不一定与Windows兼容::
to .
,*
to -
),将好的名称放入名为goodnames
:cat badname\ tr ":*“的文件中。mv
添加到pairednames
中每一行的开头。如果将badfiles
放在目录结构中而不是一个目录中的所有目录中,这就有点困难了。从顶部开始,使用find
命令而不是ls
。
https://askubuntu.com/questions/1250367
复制相似问题