Questions tagged «rm»

rm是删除文件的命令


9
如何删除此不可删除的目录?
我未解压的腐败tar文件,并成功地结束了一些目录,我不能删除,如果我尝试删除它,好像它不能被发现,但ls显示了它的存在,都与bash和与Python,我得到类似的行为,只是在我尝试使用删除它之后rm -rf, ls抱怨找不到它,然后列出了它(请参阅下文rm -rf)。该find命令显示该文件存在,但是我仍然想不出一种删除它的方法。 这是我的尝试: 在这里,您可以看到这两者,ls并find同意我们有一个目录, rl]$ ls mikeaâ??cnt rl]$ find -maxdepth 1 -type d -empty -print0 ./mikeaâcnt 但我无法删除它: rl]$ find -maxdepth 1 -type d -empty -print0 | xargs -0 rm -f -v rm: cannot remove `./mikeaâ\302\201\302\204cnt': Is a directory rl]$ ls mikeaâ??cnt 我可以cd,但它是空的: rl]$ cd mikeaâ^Á^Äcnt/ mikeaâ^Á^Äcnt]$ ls mikeaâ^Á^Äcnt]$ …
40 files  directory  nfs  rm 

8
缺少文件时,rm是否没有报告?
我有一个bash脚本,我想从各个目录中删除文件。通常,它们不会出现,因为它们不是生成的,这很好。有没有办法让脚本不报告该错误,但是rm是否有其他输出报告该错误? 或者,是否有更好的命令可用来删除噪音较小的文件?
38 rm 

6
从目录中删除数十亿个文件,同时查看进度
我有一个30 TB的目录,其中包含数十亿个文件,这些目录正式是所有JPEG文件。我正在删除文件的每个文件夹,如下所示: sudo rm -rf bolands-mills-mhcptz 该命令仅运行,无论是否运行,均不显示任何内容。 我想看到它正在删除文件或命令的当前状态是什么。

4
如何删除特定文件夹中具有特定扩展名的所有文件?
如果我将当前目录/工作目录(使用导航到它cd)设置为某个特定目录,然后键入: rm *.xvg 该命令将做什么?这是真的,上面的命令将只删除文件扩展名为.xvg 只有在工作目录? 在询问之前,我对此很紧张,因为我想绝对确定上面的命令将只删除位于工作目录中的.xvg文件。
36 bash  shell  directory  rm 

6
如何将ls传送到grep,并删除grep过滤的文件?
我想删除主文件中的某些程序包,但是文件名太长(google-chrome-stable_current_i386.deb)。因此,我决定使用命令ls|grep chrome|rm将文件传输到grep,以过滤出chrome文件,然后将其删除。它没有用,所以我想看看我该怎么做。
33 grep  pipe  ls  rm 

3
删除文件和目录的名称。无此文件或目录
我需要删除所有已编译的数据: 目录build, 目录obj, * .so文件。 我写了一个命令 find \( -name build -o -name obj -o -name *.so \) -exec rm -rf {} \; 递归地遍历所有目录并删除我需要的所有内容。 为什么最后会有这样的输出?也许我应该写一个不同的命令。 find: `./3/obj': No such file or directory find: `./3/build': No such file or directory find: `./1/obj': No such file or directory find: `./1/build': No such file …
32 find  rm  recursive 

2
为什么在`rm`坏后关闭计算机电源会保存我的文件?
经典情况:我遇到了麻烦rm,立即意识到我删除了错误的文件。(没有什么紧要关头,我可以容忍最近的备份,但仍然很烦人。) 如果想使用extundelete此类工具恢复文件,我知道进一步的磁盘活动是我的敌人,所以我立即物理关闭了计算机的电源(即使用电源按钮,而不是使用halt诸如此类的命令)。这是一台笔记本电脑,没有重要任务在运行,也没有打开任何东西,因此是可以接受的操作。(顺便说一句,从那以后我就知道,在这种情况下要做的第一件事就是首先估计丢失的文件是否仍然可以通过https://unix.stackexchange.com/a/101247进程打开-如果是,则应以这种方式恢复它们,而不是关闭机器电源。) 尽管如此,一旦机器断电,我想了一会儿并认为文件不值得花时间启动实时系统进行适当的取证。所以我重新启动了机器。然后我发现我的文件仍坐在磁盘上:在rm断电之前,这些文件还没有传播到磁盘上。我跳了一点舞,感谢系统管理员之神的意想不到的宽恕。 现在我的问题是了解这是怎么可能的,以及在将an rm实际传播到磁盘之前的典型延迟是多少?我知道磁盘IO不会立即刷新,但会在内存中放置一段时间,但是我认为磁盘日志会迅速确保挂起的操作不会完全丢失。https://unix.stackexchange.com/a/78766似乎暗示了一种单独的机制来刷新脏页和刷新日记帐操作,但没有提供足够的详细信息说明日记帐将如何涉及到rm以及预期的延迟时间操作被刷新。 更多详细信息:数据位于LUKS卷内的ext4分区中,并且在备份计算机时,我在中看到以下内容syslog: Sep 24 10:24:58 gamma kernel: [ 11.457007] EXT4-fs (dm-0): 1 orphan inode deleted Sep 24 10:24:58 gamma kernel: [ 11.458393] EXT4-fs (dm-0): recovery complete Sep 24 10:24:58 gamma kernel: [ 11.482475] EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null) 但是我不相信它与rm。 另一个问题是是否有一种方法可以告诉内核不执行任何未决的磁盘操作(而是将其转储到某个地方),而不是关闭计算机电源。(当然,不执行挂起的操作听起来很危险,但是无论如何关闭机器电源,都会发生这种情况,并且在某些情况下可以节省您的时间。)这当然会“更清洁”,也很有趣例如,对于那些不易关闭物理电源的远程服务器。

5
如果目录已为空,则删除目录中的文件而不会出错
作为部署脚本的一部分,我想从temp目录中转储一些缓存的内容。我使用如下命令: rm /tmp/our_cache/* 但是,如果/tmp/our_cache为空(将许多更改快速连续推送到我们的测试服务器时,这很常见),则会显示以下错误消息: rm: cannot remove `/tmp/our_cache/*': No such file or directory 没什么大不了的,但是这有点丑陋,我想降低此脚本输出中的信噪比。 在UNIX中删除目录内容而不收到提示该目录已为空的消息的简洁方法是什么?
31 files  rm 

2
rm -r如何递归删除?以什么顺序?
有一定的操作顺序rm吗?我rm在一个大目录上执行,并且很好奇应该在哪里查看可能已删除的内容。是否先rm处理文件,然后处理目录?还是基于inode表中的某些信息? 规格:来自GNU coreutils 8.22系统的rm:在运行beagleboneblack文件系统上运行的Arch Linux是使用USB 2.0的外部Seagate HDD(ext4)。 背景故事: 我正在执行一些目录清理并执行了 cp -r A/ B/ C/ Dest/ 不知不觉中,我跟进了 rm -r A/ B/ C/ Dest/ 当我只想表演 rm -r A/ B/ C/ 我抓住了这个,并在不久过去之前按了Ctrl+ C。具体来说,不到3秒,因为我将time命令与rm&结合使用cp。我进去检查并Dest/期待它不存在,但是瞧瞧它是完整的,似乎没有受到影响。A/ B/ C/很小,这有点令人惊讶。也许总共100–200 MB。Dest/但是,仅不足1TB。ls在目标/上执行表明在字母的两端都有文件和目录(例如AFile.txt.... .... Zoo.txt)。 rm在Dest /目录上造成破坏之前,我是否幸运并取消了它?是rm真的慢(谢天谢地!)? 如果没有,该如何rm递归删除内容,以便我可以猜测可能丢失了什么? 我并不是真的希望能恢复我可能丢失的东西,只是对可能被吹走的东西感到好奇。
30 rm  recursive 

4
如何取消链接(删除)为文件夹创建的特殊硬链接“。”?
在Linux上,当您创建文件夹时,它会自动创建两个指向相应inode的硬链接。一个是您要创建的文件夹,另一个是该.文件夹的特殊文件夹。 例: $ mkdir folder $ ls -li total 0 124596048 drwxr-xr-x 2 fantattitude staff 68 18 oct 16:52 folder $ ls -lai folder total 0 124596048 drwxr-xr-x 2 fantattitude staff 68 18 oct 16:52 . 124593716 drwxr-xr-x 3 fantattitude staff 102 18 oct 16:52 .. 如您所见,folder和.的内部folder都有相同的inode编号(与-ioption一起显示)。 无论如何,有没有删除这个特殊的.硬链接? 仅用于实验和好奇心。 另外,我猜答案也可能适用于..特殊文件。 …


4
可以通过其inode检索文件吗?
我以指定的顺序运行了以下命令: $ln a b $ls -i a b 523669 a 523669 b $rm -f a $ls -i b 523669 b 从该测试中得出的结论是,该命令rm实际上仅删除了文件名(a在此测试中)而不是文件,因为inode仍然存在并且可以通过另一个文件名(b)检索。 我的问题是,如果一个文件仅硬链接到一个文件名,则在rm执行该文件时,真实文件(即inode)是否已完全删除?如果不是,是否可以不通过文件名而是仅通过索引节点来检索文件索引节点?
27 rm  hard-link  inode 


1
从什么时候起POSIX和GNU rm不删除/?
几年来,除非使用选项调用GNU rm实用程序,/否则它不会删除--no-preserve-root。但是,该命令rm -rf /在很长一段时间内一直被隐瞒在集体潜意识中,人们仍然经常将其称为“可怕”命令。 我想知道何时rm无法删除此规则/。我检查了POSIX规范,可以看到虽然POSIX:2008包含此安全功能,但POSIX:2001没有。由于POSIX规范的在线版本会不时更新,因此每个新的子发行版中,我还检查了回溯机器,找到了2010年以来POSIX:2008的相关页面,并能够确认rm无法删除的规则/当时已经列出。 因此,我的问题是: 何时将rm无法删除的规则/添加到POSIX规范中?它是在Single UNIX Specification版本4的原始2008版本中还是在修订版中添加的? 该限制何时添加到GNU rm?我很确定这是在将它添加到POSIX之前,但是什么时候发生的呢?
23 rm  posix  history  gnu 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.