Guest User

Untitled

a guest
Jun 21st, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4. "bufio"
  5. "flag"
  6. "fmt"
  7. "os"
  8. )
  9.  
  10. func main() {
  11. lines := flag.Int("n", 10, "Lines")
  12. reverse := flag.Bool("r", false, "Reverse")
  13. flag.Parse()
  14. args := flag.Args()
  15.  
  16. // 引数があるか確認
  17. if len(args) == 0 {
  18. fmt.Println("Plese input file path.")
  19. os.Exit(1)
  20. }
  21.  
  22. file, err := os.Open(args[0])
  23. if err != nil {
  24. fmt.Println(err)
  25. os.Exit(1)
  26. }
  27. defer file.Close()
  28.  
  29. var text []string
  30.  
  31. sc := bufio.NewScanner(file)
  32. // linesNumber := *lines + 1
  33.  
  34. for i := 1; sc.Scan(); i++ {
  35. text = append(text, sc.Text())
  36. }
  37.  
  38. for i := 0; i < *lines; i++ {
  39. if len(text) > i {
  40. if *reverse {
  41. point := len(text) - 1 - i
  42. fmt.Println(text[point])
  43. } else {
  44. fmt.Println(text[i])
  45. }
  46. }
  47. }
  48. }
Add Comment
Please, Sign In to add comment