jasko887
jasko887

Reputation: 23

grep without -P with the same result

My code:

cat json | grep -Po '(?<=Inne","index":)(.*?)(?=,)'

This give my number 21 how I can make this but without -P ? and got the same result? thx.

file json:

{"success":true,"msg":"","file_path":"","subtitle_list":[{"name":"Wył.","index":0,"selected":false},{"name":"1/21 Duński","index":1,"selected":false},{"name":"2/21 Niemiecki","index":2,"selected":false},{"name":"3/21 Angielski","index":3,"selected":false},{"name":"4/21 Hiszpański","index":4,"selected":false},{"name":"5/21 Francuski","index":5,"selected":false},{"name":"6/21 Włoski","index":6,"selected":false},{"name":"7/21 Niderlandzki","index":7,"selected":false},{"name":"8/21 Norweski","index":8,"selected":false},{"name":"9/21 Fiński","index":9,"selected":false},{"name":"10/21 Szwecki","index":10,"selected":false},{"name":"11/21 Angielski","index":11,"selected":false},{"name":"12/21 Niemiecki","index":12,"selected":false},{"name":"13/21 Angielski","index":13,"selected":false},{"name":"14/21 Hiszpański","index":14,"selected":false},{"name":"15/21 Francuski","index":15,"selected":false},{"name":"16/21 Włoski","index":16,"selected":false},{"name":"17/21 Niemiecki","index":17,"selected":false},{"name":"18/21 Hiszpański","index":18,"selected":false},{"name":"19/21 Francuski","index":19,"selected":false},{"name":"20/21 Włoski","index":20,"selected":false},{"name":"Inne","index":21,"selected":true}]}

Update:

Looks like I can use -E os not return warring.

os not support -P and I cant install jq, this is embedded os in blu-ray player.

Update: Yes I can use awk or sed.

Upvotes: 2

Views: 56

Answers (1)

sseLtaH
sseLtaH

Reputation: 11227

Using sed

$ sed -E 's/.*Inne[^:]*:([^,]*).*/\1/' input_file
21

Upvotes: 1

Related Questions