RoSe is a command line tool that allows you to treat files as sets of rows and perform set operations on them.
The name RoSe comes from RowSet.
Currently, 3 set operations are implemented:
- Intersection
- Union
- Subtraction
All operations assume that the files are sorted in alphabetical order, so that we can work with big files efficiently.
# What's common between two files?
rose and file1 file2
# List common files in two directories.
rose and <(ls -a /tmp | sort) <(ls -a ~ | sort)
# Everything that exist in either of the two files
rose or file1 file2
# What exist in the first file but not in the second?
rose sub file1 file2
brew install suzaku/homebrew-rose/rose
go install github.com/suzaku/rose@latest