You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Linux Mint 20.04下cp命令复制带自定义图标的目录时保留属性的参数问题

Linux Mint 20.04下cp命令复制带自定义图标的目录时保留属性的参数问题

我来帮你搞定这个问题!

首先得搞清楚为什么Nemo复制能保留自定义图标,而你用cp命令却不行:Nemo设置的自定义图标信息是存在目录的扩展属性(Extended Attributes)里的,而你之前尝试的cp -racp -rp这些参数,默认不会完整复制这些扩展属性——它们只处理常规的权限、时间戳这类属性,漏掉了存储图标的特殊属性。

那正确的cp命令该怎么写呢?你需要加上--preserve=xattr参数,这个参数就是专门用来保留文件/目录的扩展属性的。完整命令如下:

cp -r --preserve=xattr /你的源目录路径 /你的目标目录路径

如果想同时保留所有常规属性(比如权限、所有者、时间戳),可以把-a--preserve=xattr结合起来(-a已经包含了-r-p等参数),命令变成:

cp -a --preserve=xattr /你的源目录路径 /你的目标目录路径

你可以先验证一下原目录的扩展属性,用这个命令:

getfattr -d /你的源目录路径

执行后你会看到类似user.nemo.icon这样的属性条目,这就是存储自定义图标的关键信息。复制完成后,再用同样的命令查看目标目录,如果能看到相同的属性,就说明图标已经成功保留啦。

另外给你个备选方案:如果觉得cp的参数太繁琐,也可以用rsync命令,它默认会自动复制扩展属性,命令更简洁:

rsync -a /你的源目录路径 /你的目标目录路径

这个命令的效果和Nemo复制完全一致,也能完美保留自定义图标。

备注:内容来源于stack exchange,提问作者Oliver Rafelsberger

火山引擎 最新活动