sort-cli: rework

This commit is contained in:
2024-01-29 14:06:41 +03:00
parent a17d379bd1
commit 380099b9b3
6 changed files with 253 additions and 192 deletions

34
sort-cli/loader.go Normal file
View File

@ -0,0 +1,34 @@
package main
import (
"io"
"log"
"os"
)
func open(sources []string) io.Reader {
rs := make([]io.Reader, 0, len(sources))
for _, source := range sources {
var r io.Reader
if source == "-" {
r = os.Stdin
} else {
if _, err := os.Stat(source); err != nil {
log.Fatalf("file not exists: %s", source)
}
f, err := os.Open(source)
if err != nil {
log.Fatalf("file open file: %s", err)
}
r = f
}
rs = append(rs, r)
}
return io.MultiReader(rs...)
}