github.com/ggreg80/ketos@v0.0.0-20171109040536-049616f51ddb/testdata/tar-untar/untar.go (about) 1 package main 2 3 import ( 4 "archive/tar" 5 "fmt" 6 "io" 7 "os" 8 ) 9 10 func main() { 11 12 file, err := os.Open("./taste.tar") 13 if err != nil { 14 panic(err) 15 } 16 defer file.Close() 17 18 tarr := tar.NewReader(file) 19 20 for { 21 22 hdr, err := tarr.Next() 23 if err == io.EOF { 24 break 25 } else if err != nil { 26 panic(err) 27 } 28 29 fmt.Printf("tared file: %v\n", hdr.Name) 30 _, err = io.Copy(os.Stdout, tarr) 31 if err != nil { 32 panic(err) 33 } 34 35 fmt.Println() 36 } 37 }