Shellを使用して2つの特殊文字間の文字列を取得するには?

Shellを使用して2つの特殊文字間の文字列を取得するには?

2つの特殊文字の間に文字列を取得したいと思います。例えば、

/home/oracle/ggs/text.ext

私の考えではOracle/ggs上記の文字列から。

Bashを使ってこれを行うにはどうすればよいですか?

ベストアンサー1

$ expr /home/oracle/ggs/text.ext : '/home/\(.*\)/'
oracle/ggs

/home/最後の部分の後と前の部分を返します/

要件を満たすことができる他の方法:

$ echo /home/oracle/ggs/text.ext | cut -d/ -f3,4
oracle/ggs
$ echo /home/oracle/ggs/text.ext | cut -c 7-16
oracle/ggs
$ echo oracle/ggs
oracle/ggs

おすすめ記事