UBUNTU-BASH – 如何使用上一个命令的输出

我试图删除带有.class扩展名的文件夹中的所有文件,所以我制作了一个小的 shell 脚本。谁能告诉我为什么它不起作用并为我的问题提供解决方案?

剧本:

#!/bin/bash

ls | grep .class
for i in $*
do
rm $i
done




首先,要删除带有.class扩展名的所有文件,您只需要:

rm *.class

在任何情况下,作为一般规则,您真的不应该尝试解析ls. 对于几乎任何奇怪的文件名,它都会失败

为了将来参考,要遍历命令的结果,请使用while循环。例如:

command | while read i; do rm "$i"; done
(0)

相关推荐