【发布时间】:2011-04-21 16:31:18
【问题描述】:
嘿,伙计们,我有这个小脚本,我需要对所有文件进行 grep,只留下包含关键字的文件,我一直坚持这一点,感谢您指出我的愚蠢错误的任何帮助 :)
#!/bin/bash
server=(server1...server24)
.
.
.
for ((n=0; n <= 24 ; n++))
do
if grep -q "KEYWORD" directory/${server[$n]}.html ; then
echo Empty
else
rm -f directory/${server[$n]}.html
fi
done
.
.
.
【问题讨论】:
-
为了清楚起见,我把 server1-24 放在这里是为了简化我的代码,实际上我的 24 个服务器中的每一个都有不同的主机名,这就是我需要服务器阵列的原因。
-
您的
echo Empty有点混乱。您会意识到,如果您确实找到了关键字,您就会明白这一点,对吧? -
是的,这只是一种愚蠢而快速的方法,可以确保 if 语句有效并且如果找到关键字则不对文件执行任何操作,因为在这种情况下我想保留文件,我只想删除没有关键字的文件。