32 lines
353 B
Go
32 lines
353 B
Go
package main
|
|
|
|
import (
|
|
"os"
|
|
)
|
|
|
|
func main() {
|
|
result := run()
|
|
|
|
if _, err := os.Stdout.WriteString(result); err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
os.Exit(0)
|
|
}
|
|
|
|
func run() string {
|
|
cfg := &Config{}
|
|
cfg.ParseFlags()
|
|
|
|
lines := content{}
|
|
lines.Load(open(cfg.Sources))
|
|
|
|
if cfg.Unique {
|
|
lines.Uniques()
|
|
}
|
|
|
|
lines.Sort(cfg.Reverse)
|
|
|
|
return lines.String()
|
|
}
|