summaryrefslogtreecommitdiff
path: root/doc/progs/cat.go
diff options
context:
space:
mode:
authorOndřej Surý <ondrej@sury.org>2011-09-13 13:11:55 +0200
committerOndřej Surý <ondrej@sury.org>2011-09-13 13:11:55 +0200
commit80f18fc933cf3f3e829c5455a1023d69f7b86e52 (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904 /doc/progs/cat.go
parent28592ee1ea1f5cdffcf85472f9de0285d928cf12 (diff)
downloadgolang-80f18fc933cf3f3e829c5455a1023d69f7b86e52.tar.gz
Imported Upstream version 60
Diffstat (limited to 'doc/progs/cat.go')
-rw-r--r--doc/progs/cat.go47
1 files changed, 0 insertions, 47 deletions
diff --git a/doc/progs/cat.go b/doc/progs/cat.go
deleted file mode 100644
index 9f0b8d4a3..000000000
--- a/doc/progs/cat.go
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package main
-
-import (
- "./file"
- "flag"
- "fmt"
- "os"
-)
-
-func cat(f *file.File) {
- const NBUF = 512
- var buf [NBUF]byte
- for {
- switch nr, er := f.Read(buf[:]); true {
- case nr < 0:
- fmt.Fprintf(os.Stderr, "cat: error reading from %s: %s\n", f.String(), er.String())
- os.Exit(1)
- case nr == 0: // EOF
- return
- case nr > 0:
- if nw, ew := file.Stdout.Write(buf[0:nr]); nw != nr {
- fmt.Fprintf(os.Stderr, "cat: error writing from %s: %s\n", f.String(), ew.String())
- os.Exit(1)
- }
- }
- }
-}
-
-func main() {
- flag.Parse() // Scans the arg list and sets up flags
- if flag.NArg() == 0 {
- cat(file.Stdin)
- }
- for i := 0; i < flag.NArg(); i++ {
- f, err := file.Open(flag.Arg(i))
- if f == nil {
- fmt.Fprintf(os.Stderr, "cat: can't open %s: error %s\n", flag.Arg(i), err)
- os.Exit(1)
- }
- cat(f)
- f.Close()
- }
-}