我正在尝试使用sed从文件中删除几行(即1天之前),但在执行脚本时会出错。
可能导致上述错误的原因是什么?有人可以帮忙吗?
~]# ./test.sh
Jan 20
36
sed: -e expression #1, char 3: unexpected `,'
这是脚本:
month=$(date --date="1 day ago" | cut -d " " -f2,3)
echo $month
line=$(grep -n "$month" test.log | cut -d : -f 1 | tail -1)
echo $line
if [ ! -z "$line" -a "$line" != " " ];
then
sed -i '1,"$line"d' test.log
#echo "sed -i '1,"$line"d' test.log"
else
exit
fi
答案 0 :(得分:3)
我建议您将sed行改为
sed -i '1,'"$line"'d' test.log
^ ^
| |