首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >解压缩后,一些文件丢失。

解压缩后,一些文件丢失。
EN

Unix & Linux用户
提问于 2020-05-10 15:58:35
回答 1查看 1.3K关注 0票数 0

我在Ubuntu16.04上使用默认压缩工具右键压缩了大量小文件(6102个pdf&txt文件),并将压缩文件上传到网络磁盘。但是,在其他人下载并在Windows上解压缩之后,他们都会得到更少的文件(5809)。我试着重新压缩和重发它,但是它没有起作用。其他人得到的文件仍然较少。然而,我在Ubuntu上解压缩它,它是正确的6102文件。为什么Ubuntu和Windows是不同的呢?ps:我尝试了两个不同的网络磁盘。他们都是5809。

EN

回答 1

Unix & Linux用户

发布于 2020-05-11 06:07:26

据评论,这是由于文件名包含字符*。此字符还有其他几个角色 (和子字符串)在Windows系统上的文件名中无效。

在Unix系统中,可以使用Perl *实用程序将所有_字符更改为例如D4(下划线),如下所示:

代码语言:javascript
运行
复制
rename -v 'tr/*/_/' ./*'*'*.pdf

这假设PDF文件都位于当前目录中。表达式tr/*/_/是一个Perl表达式,它在字符串中将所有*更改为_ (文件名),而文件名全局模式./*'*'*.pdf将匹配当前目录中的任何文件,该文件的名称中至少有一个*并带有.pdf文件名后缀。

bash中执行相同操作的简单循环:

代码语言:javascript
运行
复制
for name in *'*'*.pdf; do
    mv -i "$name" "${name//'*'/_}"
done

..。将"${name//'*'/_}"替换为"$name",将所有*字符更改为_字符。

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

https://unix.stackexchange.com/questions/585740

复制
相关文章

相似问题

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