0

另一个 Solaris 问题。

这是我的文件。

/abc/123/gfh/hello/what/is/up <THIS WOULD BE WHERE A NEW LINE STARTS>
bhn/fda/fds/hello/the/sky/is/blue <THIS WOULD BE WHERE A NEW LINE STARTS>
...etc

我需要在“hello”之前删除所有内容,包括文件中每一行的正斜杠“/”...

我被卡住了 -> 我使用了 sed -E 命令,但 Solaris 无法识别“-E”。叹

4

4 回答 4

1

我想你可以grep这个:

grep -o hello.*
于 2012-10-24T21:13:47.603 回答
0

这应该删除“hello”之前的所有内容,直到斜线:

sed -e 's|^.*hello/|hello|' <inputfile >outputfile
于 2012-10-24T21:08:39.117 回答
0

那应该这样做:

sed -e's/. 你好(。)/你好\1/'

于 2012-10-24T21:09:11.113 回答
0

@user4815162342:sed 解决方案中不需要“^”,“.*”就足够了。因为也有一个 awk 标签,所以这是等效的 awk 解决方案:

awk '{sub(/.*hello\//,"hello")}1'
于 2012-10-24T21:41:05.200 回答