@@ -2,6 +2,7 @@ package main
22
33import (
44 "bufio"
5+ "strings"
56 "flag"
67 "fmt"
78 "os"
@@ -12,6 +13,10 @@ func main() {
1213 flag .BoolVar (& flip , "f" , false , "" )
1314 flag .BoolVar (& flip , "flip" , false , "" )
1415
16+ var trim bool
17+ flag .BoolVar (& trim , "t" , false , "" )
18+ flag .BoolVar (& trim , "trim" , false , "" )
19+
1520 var separator string
1621 flag .StringVar (& separator , "s" , "" , "" )
1722 flag .StringVar (& separator , "separator" , "" , "" )
@@ -52,10 +57,18 @@ func main() {
5257
5358 b := bufio .NewScanner (fileB )
5459 for b .Scan () {
60+ aText := a .Text ()
61+ bText := b .Text ()
62+
63+ if trim {
64+ aText = strings .TrimSpace (aText )
65+ bText = strings .TrimSpace (bText )
66+ }
67+
5568 if flip {
56- fmt .Printf ("%s%s%s\n " , b . Text () , separator , a . Text () )
69+ fmt .Printf ("%s%s%s\n " , bText , separator , aText )
5770 } else {
58- fmt .Printf ("%s%s%s\n " , a . Text () , separator , b . Text () )
71+ fmt .Printf ("%s%s%s\n " , aText , separator , bText )
5972 }
6073 }
6174 }
@@ -70,5 +83,6 @@ func init() {
7083 fmt .Fprintf (os .Stderr , "Options:\n " )
7184 fmt .Fprintf (os .Stderr , " -f, --flip Flip mode (order by suffix)\n " )
7285 fmt .Fprintf (os .Stderr , " -s, --separator <str> String to place between prefix and suffix\n " )
86+ fmt .Fprintf (os .Stderr , " -t, --trim Trim strings\n " )
7387 }
7488}
0 commit comments