@hackage setop0.1.0.1

Perform set operations on files.

Setop: Perform set operations on files

build hackage hackage-deps license

Rationale

Set operations are a convenient solution to common problems:

  • create a list of tasks without duplicates (set union)
  • filter tasks done out of tasks to do (set difference)
  • find common elements in a database (set intersection)
  • and remove theses elements (set symmetric difference)

Setop helps you run these set operations on your files.

Usage

Let's introduce two line-separated files: A.txt and B.txt.

A.txt contains all numbers from 0 to 5 included

0
1
2
3
4
5

B.txt contains all even numbers from 0 to 8 included

0
2
4
6
8

Set Union (U/Union):

$ setop A.txt U B.txt
0
1
2
3
4
5
6
8

Set Difference (D/Diff):

$ setop A.txt D B.txt
1
3
5

Set Intersection (I/Inter):

$ setop A.txt I B.txt
0
2
4

Set Symmetric Difference (J/Disj):

$ setop A.txt J B.txt
1
3
5
6
8

Reading A.txt from STDIN:

$ cat A.txt | setop STDIN Diff B.txt
0
2
4

Reading B.txt from STDIN:

$ cat B.txt | setop A.txt Disj STDIN
1
3
5
6
8

Notes