42 lines
648 B
Go
42 lines
648 B
Go
package main
|
|
|
|
import (
|
|
e "codeberg.org/pebbe/errors"
|
|
|
|
"bufio"
|
|
"fmt"
|
|
"os"
|
|
"strings"
|
|
)
|
|
|
|
var (
|
|
x = e.ExitErr
|
|
)
|
|
|
|
func main() {
|
|
current := make(map[string]bool)
|
|
fp, err := os.Open(os.Args[2])
|
|
x(err)
|
|
scanner := bufio.NewScanner(fp)
|
|
for scanner.Scan() {
|
|
current[strings.Split(scanner.Text(), "\t")[1]] = true
|
|
}
|
|
x(scanner.Err())
|
|
fp.Close()
|
|
|
|
var last string
|
|
fp, err = os.Open(os.Args[1])
|
|
x(err)
|
|
scanner = bufio.NewScanner(fp)
|
|
for scanner.Scan() {
|
|
aa := strings.Split(scanner.Text(), "\t")
|
|
if !current[aa[1]] {
|
|
fmt.Printf("%s\t%s\n", aa[0], aa[1])
|
|
}
|
|
last = aa[0]
|
|
}
|
|
x(scanner.Err())
|
|
fp.Close()
|
|
fmt.Printf("%s\t\n", last)
|
|
}
|