比如这个地址 https://www.google.com/search?q=nginx 是从浏览器复制的,想要在终端里 ping ,还要自己选取一段复制,或者粘贴到终端,再删掉部分,如果 url 很长。。。
我现在是写了个小脚本,放到环境变量 bashrc/zshrc 里面,类似 alias ,然后直接 ping http://... 大家有更好的方法吗
ping() {
    host=$1
    if [[ $host == http* ]] || [[ $host == https* ]];then
        host=$(echo $host | awk -F '/' '{print $3}' | awk -F ':' '{print $1}')
    fi
    /sbin/ping $host
}
|      1dogking2      2022-09-26 15:32:55 +08:00 python 中 urllib.parse.urlparse()可以解析 | 
|  |      2arch9999      2022-09-26 15:35:41 +08:00  2 | 
|  |      3LLaMA2      2022-09-26 15:39:21 +08:00 你的网址会遵守 scheme://host:port/path?query 这个格式,那么先://分割,一定取最后一段,接着:分割,一定去最前一段,没了,网址得到了,前提是你原始的网址是经过 url_encode 过的,要不 query 参数中出现了类似:// :等字符会瞎 | 
|      4icebay      2022-09-26 15:47:07 +08:00 | 
|      5jifengg      2022-09-26 16:18:02 +08:00 感觉你自己的已经可以了,现在域名很少有 username 和 password 的,所以通用性几乎 100%了吧 | 
|      6fisherwei      2022-09-26 16:20:03 +08:00  1 自从 chrome 带头开始 copy 自动附加 schema:// 之后,这个事就变得很烦人 | 
|  |      7matzoh      2022-09-26 16:28:17 +08:00 | 
|      8FrankAdler OP @arch9999 这肯定没有直接 cmd+c 复制然后 cmd+v 去 ping 快啊,本质上我的出发点就是想不要这样复制😂 | 
|      9FrankAdler OP | 
|      10FrankAdler OP @IceBay 飞浏览器环境用不上这个吧 | 
|      11FrankAdler OP @matzoh 很强,不过我在用 raycast | 
|  |      12LindsayZhou      2022-09-27 07:59:03 +08:00 无聊写一个: ``` echo "https://www.baidu.com" | python -c 'import os;from urllib.parse import urlparse;os.system("ping "+urlparse(input()).hostname)' ``` |