试图在 2 个分隔符之间获取字符串 [英] Trying to get string between 2 delimiters

查看:39
本文介绍了试图在 2 个分隔符之间获取字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在尝试使用 linux 命令获取 2 个分隔符之间的字符串时遇到了一些问题.

I have a bit of an issue by trying to get a string between 2 delimiters using linux commands.

我正在尝试使用 sed 从 "AA CC [[TEST|LOL]] EE FF" 检索 TEST|LOL.

I am trying to retrieve TEST|LOL from "AA CC [[TEST|LOL]] EE FF" using sed.

我用过这个命令,但它给了我一个错误,无效引用\1 on 1 s命令RHS

I've used this command,but it gives me an error, invalid reference \1 on 1 s commands RHS

我目前使用的命令:

echo "AA CC [[TEST|LOL]] EE FF" | sed 's/.*[[\(.*\)]].*/\1/g'

那么是否有可能修复该命令?或者可以在不使用 IFS 的情况下创建一个 bash 脚本?

So is there any possibility of fixing that command?Or maybe creating a bash script without the use of an IFS?

推荐答案

你必须同时转义 []

You must escape the [ and ] as well

$ echo "AA CC [[TEST|LOL]] EE FF" | sed 's/.*\[\[\(.*\)\]\].*/\1/g'
TEST|LOL

这篇关于试图在 2 个分隔符之间获取字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆