如何获取由单引号包围的此字符串的内容

时间:2011-09-06 03:38:18

标签: shell

我有一个这样的字符串:

SOMETHING='abc.abc.abc'

如何在单引号内提取它的内容(abc.abc.abc)?

4 个答案:

答案 0 :(得分:2)

$ awk -F"=\047|\047" '/SOMETHING/{print $(NF-1)}' file
abc.abc.abc

答案 1 :(得分:1)

str="SOMETHING='abc.abc.abc'"
substr=$(echo "$str" | cut -d "'" -f 2)

使用bash,你可以写

substr=$(cut -d "'" -f 2 <<< "$str")

或者,仅限shell:

IFS="'"
set -- $str
substr=$2

或使用数组

IFS="'"
fields=($str)
substr=${fields[1]}

答案 2 :(得分:0)

您应该已经能够提取它了。例如:

$ cat test.sh 
#!/bin/bash
SOMETHING='abc.abc.abc'
echo $SOMETHING
$ ./test.sh 
abc.abc.abc

答案 3 :(得分:0)

您已将此问题标记为shell。所以我猜你能在grep中使用正则表达式。或许你可以用javascript正则表达式做点什么。

这个正则表达式会找到它

abc\.abc\.abc