34 lines
419 B
Go
34 lines
419 B
Go
package main
|
|
|
|
import (
|
|
"os"
|
|
|
|
sortcli "git.grachevko.ru/grachevko/h/sort-cli"
|
|
)
|
|
|
|
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 := sortcli.Content{}
|
|
lines.Load(sortcli.Open(cfg.Sources))
|
|
|
|
if cfg.Unique {
|
|
lines.Uniques()
|
|
}
|
|
|
|
lines.Sort(cfg.Reverse)
|
|
|
|
return lines.String()
|
|
}
|