如何通过sed或awk删除bash中的3.rd斜杠后的字符串中的所有字符?
我不知道怎么做。
例如。我们有http://qwe.qwe.rty/asdfgh/zxc.html
我们需要:http://qwe.qwe.rty/
非常感谢你:)
答案 0 :(得分:2)
我猜你还需要点
echo http://qwe.qwe.rty/asdfgh/zxc.html | cut -d/ -f1-3
http://qwe.qwe.rty
如果没有管道到tr -d '.'
答案 1 :(得分:1)
最后添加了一个斜杠,否则对我来说太棘手了。 根据建议更新。
awk -F"/" -v OFS=/ '{print $1,$2,$3,""}' file
http://qwe.qwe.rty/
答案 2 :(得分:1)
使用参数扩展:
var="http://qwe.qwe.rty/asdfgh/zxc.html"
echo ${var%*${var#*/*/*/}}
答案 3 :(得分:0)
稍微复杂一点,但只有bash才能:
regex='^([^/]+)//([^/]+)/(.*)$' ; [[ "http://qwe.qwe.rty/asdfgh/zxc.html" =~ $regex ]] && echo ${BASH_REMATCH[1]}//${BASH_REMATCH[2]}