从某些字母开始阅读

时间:2011-12-22 17:54:39

标签: shell unix sed awk

我想读取字符“,”到最后的字符串。 我认为这可能与sed或awk有任何想法吗?

示例:

socialcoding,github.html

我希望他只回应github

5 个答案:

答案 0 :(得分:1)

$ echo socialcoding,github.html | sed 's/.*,//'
github.html

我把“最后的结尾”用来表示“最后的结尾”,而不是“直到最后一句”,因为你的最后一句话似乎表明了这一点。

答案 1 :(得分:0)

你的意思是,你想把字符串分成两个“,”, 然后做:

echo socialcoding,github.html | cut -d, -f2

HTH Chris

答案 2 :(得分:0)

使用awk,您可以执行以下操作。

awk -F"," '{for (i=2;i<=NF;i++) printf $i" "}' filename

更新

根据您的问题,您希望在,之后获得价值,而不需要.

如果您的示例数据是实际数据,那么您可以执行此操作 -

[jaypal:~/Temp] echo "socialcoding,github.html" | awk -F"[,.]" '{print $2}'
github

答案 3 :(得分:0)

如果您将数据存储在变量中,则可以执行以下操作:

line="socialcoding,github.html"
echo "${line#*,}"

打印:

github.html

答案 4 :(得分:0)

这可能对您有用:

echo "socialcoding,github.html" | sed 's/^[^,]*,//'
github.html