使用 Bash 一次性删除多个文件

linuxoperating systemopen source更新于 2026/1/26 11:52:17

简介

Bash 是一种在 Linux 系统上常用的 Unix Shell 和命令语言。它允许用户执行各种任务,包括删除文件。本文将介绍如何在 Linux 系统上使用 Bash 一次性删除多个文件。我们将介绍删除多个文件的基本语法,以及一些用于删除特定类型文件或强制删除写保护文件的高级技巧。

在 Linux 中使用 rm 命令

rm 命令用于在 Bash 中删除文件。要删除单个文件,您可以使用

$ rm myfile1.temp

这将删除文件 myfile1.temp。

要一次性删除多个文件,请使用 rm 命令,后跟要删除的文件名,并以空格分隔。

$ rm myfile1.temp myfile2.temp myfile3.temp

这将删除文件 myfile1.temp、myfile2.temp 和 myfile3.temp。

通配符

除了指定要删除的文件名外,您还可以使用通配符一次性删除多个文件。通配符是用于匹配文件名中一个或多个字符的特殊字符。

最常用的通配符是 * 字符,它匹配文件名中的零个或多个字符。例如,要删除当前目录中所有 .zip 文件,您可以使用以下命令 -

$ rm *.zip

这将删除当前目录中所有以 .zip 结尾的文件。

您还可以使用 ? 通配符,它​​匹配任意单个字符。例如,要删除当前目录或工作目录中所有名称为一位数字的文件,您可以使用以下命令 -

$ rm ?

这将删除当前目录或工作目录中所有以单数数字命名的文件,例如 1、2、3 等。

高级 rm 选项

您可以使用 rm 命令中的几个高级选项,以特定方式删除多个文件。

-i 标志

默认情况下,rm 命令将删除文件而不提示确认。但是,您可以使用 -i 标志让 rm 在删除每个文件之前提示您确认。

$ rm -i myfile1.temp myfile2.temp myfile3.temp

这将为每个文件显示一个提示,要求您确认是否要删除它。

-f 标志

有时,您可能想要删除写保护或无法正常删除的文件。在这种情况下,您可以使用 -f 标志强制 rm 删除该文件。

$ rm -f myfile1.temp myfile2.temp myfile3.temp

这将删除文件 myfile1.temp、myfile1.temp 和 myfile1.temp,即使它们处于写保护状态。

-r 标志

-r 标志可用于递归删除目录及其内容。当您要删除目录及其所有子目录和文件时,此功能非常有用。

$ rm -r directory

这将删除目录 directory 及其所有子目录和文件。

谨慎使用通配符

使用通配符删除多个文件时务必小心,因为很容易意外删除比预期更多的文件。例如,以下命令将删除当前目录中所有可见文件,无论其扩展名是什么 -

$ rm *

为避免意外删除重要文件,在使用通配符删除多个文件时,建议使用 -i 参数。这将在删除每个文件之前提示您确认,并让您有机会在必要时取消操作。

在某些情况下,您可能需要删除 root 用户拥有的文件,或者该文件具有阻止您以普通用户身份删除的权限。在这种情况下,您可以使用 sudo 命令以 root 用户身份执行 rm 命令。

总结

在本文中,我们研究了如何在 Linux 系统上使用 Bash 一次删除多个文件。我们已经了解了如何使用带通配符的 rm 命令以及 -i、-f 和 -r 标志来删除多个文件以及强制删除写保护的文件和目录。有了这些工具,您应该能够在 Linux 系统上的 Bash 中轻松删除多个文件,同时仍需小心谨慎,避免意外删除重要文件。因此,在 Linux 系统上使用 Bash 一次性删除多个文件时务必谨慎。


相关文章


有用资源