我经过了其他线程sed命令乱七八糟的没有工作但这对我没有帮助
flag=1
echo "enter the folder into which you want to capture"
read logs
mkdir $logs
path=/user/gur40139/shell/angel
for i in $path/*.tra*
do
value=$( grep -ic *= $i )
if [ $value -ge $flag ]
then
name=`basename $i .tra*`
echo -e "count is $valuen" >> $path/$logs/log_"$name".txt
sed -n '/*=/ {n;p}' $i|sed 2n;G >> $path/$logs/log_"$name".txt
fi
done
echo -e "nDonen"
错误:
sed:命令乱码:/*=/{n; p}
附加说明:此代码在Bash 4.1版本上正常工作,但我想在3.0中对其进行测试,甚至有许多选项甚至没有像SED -Version那样工作。
sed -n '/*=/ {n;p;}' ...
您需要在p
之后终止该行,因此;
或新行。您的代码肯定会适用于最近的GNU SED,但在POSIX版本上