我想用 sed 命令执行 for 循环,但遇到了错误
for i in <comma-separated server name list>;do "command";echo $i;done
其中命令 = sed '/^$/d' /home/nextag/instance.properties|grep -vc '#'
我收到以下错误:- -bash: sed "/^$/d" /home/nextag/instance.properties|grep -vc
#: No such file or directory lu1
执行此命令以获得完美输出的正确方法是什么
我也尝试过这个>>for i in lu1;do 'sed \'/^$/d\' /home/nextag/instance.properties|grep -vc \'#\'';echo $i;done
另外,有人能解释'/^$/d'
一下sed '/^$/d' /home/nextag/instance.properties|grep -vc '#'
答案1
这应该可行。
for i in <space-delimited server name list>;
do
sed '/^$/d' /home/nextag/instance.properties | grep -vc '^\s*#';
echo $i;
done
下面的行用于删除所有空行。
'/^$/d'
grep -vc '^\s*#'
将忽略以 # 开头的行并给出其他行的数量。
希望这可以帮助。