move wget into here
Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
parent
758e7d157b
commit
93d3e13acc
18
chomp.go
18
chomp.go
|
@ -54,10 +54,22 @@ func Chomp(a interface{}) string {
|
|||
return perlChomp(s)
|
||||
case []uint8:
|
||||
log.Printf("shell.Chomp() FOUND []uint8")
|
||||
var u8s []uint8
|
||||
u8s = a.([]uint8)
|
||||
var tmp []uint8
|
||||
tmp = a.([]uint8)
|
||||
|
||||
s := string(u8s)
|
||||
s := string(tmp)
|
||||
return perlChomp(s)
|
||||
case uint64:
|
||||
log.Printf("shell.Chomp() FOUND []uint64")
|
||||
var tmp uint64
|
||||
tmp = a.(uint64)
|
||||
s := string(tmp)
|
||||
return perlChomp(s)
|
||||
case int64:
|
||||
log.Printf("shell.Chomp() FOUND []uint64")
|
||||
var tmp int64
|
||||
tmp = a.(int64)
|
||||
s := string(tmp)
|
||||
return perlChomp(s)
|
||||
case *bytes.Buffer:
|
||||
log.Printf("shell.Chomp() FOUND *bytes.Buffer")
|
||||
|
|
|
@ -0,0 +1,78 @@
|
|||
package shell
|
||||
|
||||
/*
|
||||
This simply parses the command line arguments using the default golang
|
||||
package called 'flag'. This can be used as a simple template to parse
|
||||
command line arguments in other programs.
|
||||
|
||||
It puts everything in a 'config' Protobuf which I think is a good
|
||||
wrapper around the 'flags' package and doesn't need a whole mess of
|
||||
global variables
|
||||
*/
|
||||
|
||||
import "io"
|
||||
import "os"
|
||||
import "bytes"
|
||||
import "strings"
|
||||
import "net/http"
|
||||
|
||||
/*
|
||||
import "git.wit.com/wit/shell"
|
||||
import "github.com/davecgh/go-spew/spew"
|
||||
*/
|
||||
|
||||
func Wget(url string) (*bytes.Buffer) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
// Get the data
|
||||
resp, err := http.Get(url)
|
||||
if err != nil {
|
||||
handleError(err, -1)
|
||||
return nil
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
|
||||
buf.ReadFrom(resp.Body)
|
||||
return buf
|
||||
}
|
||||
|
||||
func WgetToFile(filepath string, url string) error {
|
||||
// Get the data
|
||||
resp, err := http.Get(url)
|
||||
if err != nil {
|
||||
handleError(err, -1)
|
||||
return err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
|
||||
// Create the file
|
||||
out, err := os.Create(filepath)
|
||||
if err != nil {
|
||||
handleError(err, -1)
|
||||
return err
|
||||
}
|
||||
defer out.Close()
|
||||
|
||||
// Write the body to file
|
||||
_, err = io.Copy(out, resp.Body)
|
||||
return err
|
||||
}
|
||||
|
||||
func Write(filepath string, data string) bool {
|
||||
// Create the file
|
||||
out, err := os.Create(filepath)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
defer out.Close()
|
||||
|
||||
// Write the body to file
|
||||
// _, err = io.Copy(out, resp.Body)
|
||||
count, err := io.Copy(out, strings.NewReader(data))
|
||||
if err != nil {
|
||||
handleError(err, -1)
|
||||
return false
|
||||
}
|
||||
handleError(nil, int(count))
|
||||
return true
|
||||
}
|
Loading…
Reference in New Issue