相关疑难解决方法(0)

使用sed删除两个匹配模式之间的所有行

我有一个类似的文件:

# ID 1
blah blah
blah blah
$ description 1
blah blah
# ID 2
blah
$ description 2
blah blah
blah blah
Run Code Online (Sandbox Code Playgroud)

如何使用sed命令删除#$线之间的所有行?结果将变为:

# ID 1
$ description 1
blah blah
# ID 2
$ description 2
blah blah
blah blah
Run Code Online (Sandbox Code Playgroud)

能不能请你解释一下吗?

regex sed

57
推荐指数
5
解决办法
4万
查看次数

SED:删除两个模式之间的特定行

我正在尝试使用过滤*.ics文件sed.该*.ics文件如下所示:

[...]

BEGIN:VEVENT
UID:0xfoo
SUMMARY:foo
DTSTART:20131212T090000
DTEND:20131212T100000
SEQUENCE:0
DTSTAMP:20131212T100000
LOCATION:foo
CATEGORIES:foo
DESCRIPTION:foo
CLASS:PUBLIC
END:VEVENT

[...]
Run Code Online (Sandbox Code Playgroud)

我想删除例如用UID或开始的行SEQUENCE,但仅限于它们之间 BEGIN:VEVENTEND:VEVENT

我尝试删除这些行:

sed '/^BEGIN:VEVENT/,/^END:VEVENT/ /^UID/d'
Run Code Online (Sandbox Code Playgroud)

但它只会返回一个错误,例如 unknown command '/'

如何删除这些行?

谢谢!

icalendar design-patterns sed

3
推荐指数
2
解决办法
5742
查看次数

使用sed在两种模式之间进行打印

所以,我发现了一个很大的删除两个模式之间的文本打印两个分隔符之间的文本,但我还没有找到上打印使用bash功能,两种模式之间的文本任何东西.

如果我有:

"Alas poor Yorik, I knew him well"
Run Code Online (Sandbox Code Playgroud)

我想打印"穷人"和"好"(独家)模式之间的所有内容我会得到:

" Yorik, I knew him "
Run Code Online (Sandbox Code Playgroud)

我怎么能用sed或awk这样的东西来实现呢?

linux bash awk sed

2
推荐指数
1
解决办法
4623
查看次数

标签 统计

sed ×3

awk ×1

bash ×1

design-patterns ×1

icalendar ×1

linux ×1

regex ×1