github.com/codingeasygo/util@v0.0.0-20231206062002-1ce2f004b7d9/tools/conn/conn.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "io" 6 "net" 7 "net/url" 8 "os" 9 ) 10 11 func main() { 12 if len(os.Args) < 2 { 13 fmt.Printf("Usage: conn uri\n") 14 os.Exit(1) 15 } 16 u, err := url.Parse(os.Args[1]) 17 if err != nil { 18 fmt.Printf("parse uri fail with %v\n", err) 19 os.Exit(1) 20 return 21 } 22 conn, err := net.Dial(u.Scheme, u.Host) 23 if err != nil { 24 fmt.Printf("conn uri fail with %v\n", err) 25 os.Exit(1) 26 return 27 } 28 go io.Copy(conn, os.Stdin) 29 io.Copy(os.Stdout, conn) 30 }