我想从shell var中提取子字符串。这是一个例子:
user@ubuntu:~$ var=$(curl -s 'https://www.youtube.com/')
user@ubuntu:~$ echo $var|grep -ob GetBrowse_rid
user@ubuntu:~$ 50000:GetBrowse_rid
user@ubuntu:~$ echo $var|grep -ob what_to_watch
user@ubuntu:~$ 55555:what_to_watch
user@ubuntu:~$ echo ${var:50000:55555}
我想提取文本beetwen“GetBrowse_rid”和“what_to_watch”,但由于某种原因,我的代码不起作用
答案 0 :(得分:0)
您可以使用sed
:
curl -s 'https://www.youtube.com/' | sed -n 's/.*\(GetBrowse_rid.*what_to_watch\).*/\1/p'
GetBrowse_rid":"0xd43def10f9d14420","yt_fn":"what_to_watch