关于Linux下文件删除文件时提示No such file or directory的解决办法

本文分享了一位Linux初学者在使用tar命令压缩文件时,因文件名包含特殊字符导致常规删除方法失效的经历。通过查看inode号成功删除了无法直接移除的文件,为遇到类似问题的用户提供了解决思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:http://blog.51cto.com/13921547/2172901

本人了Linux小白一枚,遇到一点问题想请老大们指点一下
今天练习tar命令压缩文件时想给给文件名内增加一个当前年月日

[root@poker log]# tar zcvf log.tar-'date +%F'.gz .

结果把反引号写成单引号
用 ls 命令查看发现压缩后的文件名为

log.tardate +%F.gz

意识到自己的错误之后想删除这个文件
结果出现

[root@poker log]# rm ./log.tar-date +%F.gz

rm: cannot remove ./log.tar-date': No such file or directory<br/>rm: cannot remove+%F.gz': No such file or directory

想移动到别处也出现一样的提示

find . -name "*.gz"|xargs mv -t /tmp

mv: cannot stat ./log.tar-date': No such file or directory<br/>mv: cannot stat+%F.gz': No such file or directory

几经周折.....此处省略一万个字
后来想到是不是可以用inode号删除
于是首先查看这个文件的 inode号

[root@poker log]# ls -lhi .
267015 -rw-r--r-- 1 root root 373K Sep 9 16:33 log.tardate +%F.gz

然后尝试

[root@poker log]# find . -inum 267015 -delete

ls 查看,结果这个文件真的没有了

请问为啥会出现这种情况呢?

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值