The previous
rdup roadmap has been implemented. I'm now working on the post 0.6.1
items and added a few new features:
The regular expressions are now
pcre(Perl Compatible Regular Expressions), this adds an extra dependency tordupfor this library. But these are so much more powerful that I think it is worth it.For completeness sake I added: sockets, named pipes, character devices and block devices as recognized file types to
rdup. One side effect of this is that thefilesize(%s) is (again) overloaded to mean minor,major just as in thels -loutput when an character or block devices is printed.The rdup-utils currently ignore these extra file types.
So lets say I have this directory:
$ ls -l A total 0 -rwsrwsr-x 1 miekg miekg 0 Aug 11 12:45 blaat* -rw-rw-r-- 1 miekg miekg 0 Aug 11 16:30 ff prw-rw-r-- 1 miekg miekg 0 Aug 11 16:34 fifo| brw-r--r-- 1 root root 8, 0 Aug 11 16:24 sda crw-r--r-- 1 root root 8, 0 Aug 11 16:24 sdb srwxrwxrwx 1 miekg miekg 0 Aug 11 16:58 socket=rdupwill now print this as:./rdup /dev/null A +d 0755 0 0 5 0 /home +d 0751 1000 1000 11 0 /home/miekg +d 0711 1000 1000 15 0 /home/miekg/svn +d 0700 1000 1000 20 0 /home/miekg/svn/rdup +d 0775 1000 1000 26 0 /home/miekg/svn/rdup/trunk +d 0775 1000 1000 28 0 /home/miekg/svn/rdup/trunk/A +- 6775 1000 1000 34 0 /home/miekg/svn/rdup/trunk/A/blaat +- 0664 1000 1000 31 0 /home/miekg/svn/rdup/trunk/A/ff +p 0664 1000 1000 33 0 /home/miekg/svn/rdup/trunk/A/fifo +b 0644 0 0 32 8,0 /home/miekg/svn/rdup/trunk/A/sda +c 0644 0 0 32 8,0 /home/miekg/svn/rdup/trunk/A/sdb +s 0777 1000 1000 35 0 /home/miekg/svn/rdup/trunk/A/socketSo there as 4 new types: p, b, c and s.
The move to
GNodemight be needed to allowrdupto reverse print the filelist (i.e.rdup /dev/null ~/bin | tac). In 0.6.2 a-Rflag is added that makes this possible. The internal structures inrdupare stillGTree's (balanced binary trees). The-Rfeature is implemented by putting all elements in a linked list (GList) and reverse printing that.

