【发布时间】:2015-10-14 05:19:54
【问题描述】:
我正在尝试删除模式匹配中的 4 个后续行。
要匹配的模式是我从其他文件中逐行读取的内容。
我的脚本如下所示:
#! /bin/bash
while read line; do
cat database.US_en_test | sed "/$line/ , +4d" >> output
done < file_del.txt
但是,我收到如下错误:
sed: -e expression #1, char 20: unknown command: `1'
不知道是什么错误,请帮忙!
【问题讨论】:
-
添加file_del.txt的内容。
-
正如@cyrus 所暗示的,file_del.txt 中可能有一行包含
/字符。向我们展示该文件可能会有所帮助。另外,如果你在循环之前添加set -x,bash 将在执行之前打印带有扩展变量的每一行,这样你就可以准确地看到sed命令失败时的样子