回答編集履歴
1
追記
test
CHANGED
@@ -23,3 +23,31 @@
|
|
23
23
|
|
24
24
|
|
25
25
|
`\1`はその前の括弧内と同じ文字列。`\K`は後読みという概念で、マッチした後で、そこから前の部分はマッチした文字列から(つまり`-o`での表示対象から)除きます。
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
実行結果:
|
30
|
+
|
31
|
+
```sh
|
32
|
+
|
33
|
+
cat <<EOF |
|
34
|
+
|
35
|
+
1,/data/aa.ext,641,/data/aa.ext,
|
36
|
+
|
37
|
+
2,/data/bbb.ex,830,/data/bbb.ex,
|
38
|
+
|
39
|
+
2,/data/cc.ex1,830,/data/cc.ex1
|
40
|
+
|
41
|
+
EOF
|
42
|
+
|
43
|
+
grep -P -o '(/[^,]*).*\K\1'
|
44
|
+
|
45
|
+
===>
|
46
|
+
|
47
|
+
/data/aa.ext
|
48
|
+
|
49
|
+
/data/bbb.ex
|
50
|
+
|
51
|
+
/data/cc.ex1
|
52
|
+
|
53
|
+
```
|