我有一个目录,其中包含一些文件和一些包含其他文件的文件夹。我试图删除主目录中的这些文件,而不触及文件夹或其内容。
我正在用这个
rm /media/d/data/*
它工作正常,只删除文件,但我想知道为什么终端显示此消息:
rm: cannot remove /media/d/data/dd1: Is a directory
主文件夹下找到的所有文件夹都会显示相同的消息。谁能解释一下吗?有没有办法不在终端上显示此消息?
答案1
默认情况下,rm
不删除目录。如果您希望删除目录,请使用rm -rf
.如果您想隐藏该消息,请使用rm <dir> 2>/dev/null
。请注意,所有其他错误消息也会被抑制。
答案2
这 * 选取两个文件和目录。要删除文件,只需尝试此操作
find /media/d/data/ -maxdepth 1 -type f -delete
答案3
POSIXly:
find ! -name . -prune -type f -exec rm -f {} +