Mint 回收站下恢复不同目录下的同名文件时存在其中之一文件添加后缀的问题的解决

/*********************************************************************
 * Author  : Samson
 * Date    : 07/22/2014
 * Test platform:
 *              Mint 15
 *              GNU bash, version 4.2.45
 * *******************************************************************/

先来说说这个问题出现的现像吧:


当从回收站中还原原来属于不同目录下但同名的两个文件或文件夹时,会在恢复时出现其中一个的名称在恢复后增加.2的后缀,那么此问题如何解决呢?

主要在Mint下进行了此问题的研究:

当文件删除后,会在系统中的~/.local/share/Trash目录下存在files和info两个目录,files这个目录存放的是实际删除的文件,而在info目录中存放的是对应的删除文件的原来的全路径及删除的时间,如下:
删除两个不同目录下名称都为11111的文件后, files和info目录下的文件为:
ufo@ufo:~$ ls ~/.local/share/Trash/files/
11111  11111.2  tem

ufo@ufo:~$ ls ~/.local/share/Trash/info/
11111.2.trashinfo  11111.trashinfo  tem.trashinfo

info文件中的内容为:
[Trash Info]
Path=/home/ufo/Desktop/2222/11111
DeletionDate=2014-07-23T16:01:29
/home/ufo/.local/share/Trash/info/11111.trashinfo (END)

[Trash Info]
Path=/home/ufo/Desktop/111/11111
DeletionDate=2014-07-23T16:01:37
/home/ufo/.local/share/Trash/info/11111.2.trashinfo (END)

首先猜测判断,应该是处理的时候直接读取了info下的文件名,而不是读取的info目录下的对应的目录中的Path值,因为Path全路径中是包含了原始文件名的;

然后看nemo代码,作为一个gtk菜鸟来说,代码看的真TM的火大呀………………
最后还是在网上找到了gnome社区的筒子们做出的贡献的代码,这时候,觉得社区的力量真TM大呀,心中敬佩之情油然而生呀,不能再像某地的g???e社团的孩子们没有代码的玩法了。

主要的修改方法,其实和我上面分析的差不多,具体修改请参看以下关于nautilus包的代码,nemo其实和它是一个妈生的:_(
https://git.gnome.org/browse/nautilus/commit/?id=ecee8be850b8342c804de2ecc3e613b99a20a010

在nemo修改的时候,把代码路径中的nautilus替换为nemo即可;


向为社区作出贡献的筒子们致以敬意!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值