![使用 `rm` 循环在 Linux 中删除文件](https://linux22.com/image/1544234/%E4%BD%BF%E7%94%A8%20%60rm%60%20%E5%BE%AA%E7%8E%AF%E5%9C%A8%20Linux%20%E4%B8%AD%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6.png)
file.log.1.gz
我有、file.log.2.gz
、 …等文件file.log.100.gz
。我想从 到 循环1
删除100
这些文件。该怎么做?
我在 Linux 中尝试了这个命令:
for i in $(seq 1 100); do rm -rf file.log.$i.gz
答案1
你的done
失踪了。
for i in $(seq 1 100); do rm -f "file.log.$i.gz"; done
我删除了,-r
因为当参数是常规文件时,递归是无用的。
这种无循环语法也适用于bash
。它将所有名称提供给单个rm
:
rm file.log.{1..100}.gz