QA@IT

linuxのgrepについて

6062 PV

シェル内のパスの抜き出しについて質問です。
test.list内に/var/test/test2/point/test.logのパスの記載があります。

test.listをfor i in $(test.list)で定義し、$iで使用可能にしています。
この変数の中よりpointの部分のみをgrepする方法を教えてください。
pointは常に定義されているわけでなく、他のディレクトリ名にも変わります。
(/var/test/test2/change/test.log)等など
よって、pointでgrepすることはできません。
よろしくお願いいたします。

回答

/で区切られた4つ目を取り出したいと言う事?

echo /var/test/test2/point/test.log | grep -o -P '^/.*?/.*?/.*?/\K[^/]*'
#=> point
編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。