github.com/NeowayLabs/nash@v0.2.2-0.20200127205349-a227041ffd50/stdbin/write/main.go (about) 1 package main 2 3 import ( 4 "bytes" 5 "fmt" 6 "io" 7 "os" 8 ) 9 10 var banner = fmt.Sprintf("%s <file> <data>\n", os.Args[0]) 11 12 func fatal(msg string) { 13 fmt.Fprintf(os.Stderr, "%s", msg) 14 os.Exit(1) 15 } 16 17 func main() { 18 if len(os.Args) <= 1 || 19 len(os.Args) > 3 { 20 fatal(banner) 21 } 22 23 var ( 24 fname = os.Args[1] 25 in io.Reader 26 ) 27 28 if len(os.Args) == 2 { 29 in = os.Stdin 30 } else { 31 in = bytes.NewBufferString(os.Args[2]) 32 } 33 34 err := write(fname, in) 35 if err != nil { 36 fatal(err.Error()) 37 } 38 }