美文网首页
jq的字符串操作

jq的字符串操作

作者: CodingCode | 来源:发表于2021-04-20 08:00 被阅读0次
  1. 字符串拼接
$ echo '{"hostname":"host.domain.com","port":8080}' | jq '.hostname + ":" + (.port | tostring)'
"host.domain.com:8080"
  1. 字符串长度
$ echo '{"address":"host.domain.com:8080"}' | jq '.address | length'
20
  1. 子串
$ echo '{"address":"host.domain.com:8080"}' | jq '.address[5:]'
"domain.com:8080"
$ echo '{"address":"host.domain.com:8080"}' | jq '.address[:4]'
"host"
$ echo '{"address":"host.domain.com:8080"}' | jq '.address[5:11]'
"domain"
  1. split
$ echo '{"address":"host.domain.com:8080"}' | jq '.address | split(":")[0]'
"host.domain.com"
$ echo '{"address":"host.domain.com:8080"}' | jq '.address | split(":")[1]'
"8080"
  1. trim
$ echo '{"address":"aaa.domain.aaa.com:8080"}' | jq '.address|ltrimstr("aa")'
"a.domain.aaa.com:8080"
$ echo '{"address":"aaa.domain.aaa.com:8080"}' | jq '.address|rtrimstr("80")'
"aaa.domain.aaa.com:80"
  1. 子串替换
$ echo '{"address":"aaa.domain.aaa.com:8080"}' | jq '.address|sub("aaa"; "bbb")'
"bbb.domain.aaa.com:8080"
$ echo '{"address":"aaa.domain.aaa.com:8080"}' | jq '.address|sub("aaa"; "bbb"; "g")'
"bbb.domain.bbb.com:8080"
$ echo '{"address":"aaa.domain.aaa.com:8080"}' | jq '.address|gsub("aaa"; "bbb")'
"bbb.domain.bbb.com:8080"

相关文章

网友评论

      本文标题:jq的字符串操作

      本文链接:https://www.haomeiwen.com/subject/gueglltx.html