gpt4 book ai didi

linux - 从 linux 中的 url 中删除一个特定的数字

转载 作者:太空宇宙 更新时间:2023-11-04 10:22:23 25 4
gpt4 key购买 nike

我有一个由特定进程生成的带有以下 header 的文件

Link: <https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=2>; rel="next", <https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=8>; rel="last"

我只想从上面的内容中的 page=8 中删除数字 8。怎么办?感谢任何帮助。

最佳答案

试试这个 -

$ cat  f
Link: <https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=2>; rel="next", <https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=8>; rel="last"

$ awk -F'[&=<>]' '{for(i=1;i<=NF;i++) if($i ~ /^page$/) {print $(i+1)}}' f
2
8

如果它被追加,那么您将使用下面的 awk 获得最后一个值:

$ awk -F'[&=<>]' '{for(i=1;i<=NF;i++) if($i ~ /^page$/) {kk=$(i+1)}} END{print kk}' ff
8

Limitation : Currently you have page=2 and page=8 and above command will print the last page value.

如果你总是想打印第二个值“8”(添加额外的行到现有的url,考虑到它会继续增加,你总是需要第二个值,然后在下面使用) -

$ cat f
Link: <https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=2>; rel="next", <https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=8>; rel="last"
<https://rnd.corp.zoom/api/v3/repositories/99/issues?state=all&per_page=100&page=8>; rel="last"

$ awk -v k=1 -F'[&=<>]' '{for(i=1;i<=NF;i++) if(($i ~ /^page$/) && (k==2) ) {print $(i+1)} k++}' f
8

关于linux - 从 linux 中的 url 中删除一个特定的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43319169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com