Hacker News new | past | comments | ask | show | jobs | submit login

What about "rsync"? I use this command pretty often.



Completely unrelated.


Yep, rsync is still a relevant and awesome tool. The man page is one of the nicest I've seen too, 60+ pages in a small font and nicely structured with many examples.


I can't tell if your joking but Everytime I try to use that man page, I end up on stack overflow. I mean, why are all the options out of alphabetical order? You want me to page through all of them? Why are all the examples in the middle so I have to page past them to find out what options are available? It is such a mess.

Maybe that was the point and I'm just joke_explainer. Or maybe we have a legit disagreement about what makes a good man page.


https://download.samba.org/pub/rsync/rsync.html

> I can't tell if your joking but Everytime I try to use that man page, I end up on stack overflow. I mean, why are all the options out of alphabetical order? You want me to page through all of them?

Sorting the options alphabetically is a reasonable choice, but so's sorting (roughly) by category and recency. That way, say, all options relating to links are near each other. Besides, even the venerable pager "more" supports searching, so there's no need to manually page up / down.

And if you're using "less" as your pager, it's easy enough to sort the Options Summary section in the man page.

> Why are all the examples in the middle so I have to page past them to find out what options are available?

Some man pages put the example at the end, which again I agree is reasonable. However, rsync's man page puts it at the top, not the middle, which is also reasonable. When formatted to 80 columns, rsync's man page is ~4200 lines, and the Usage section is at ~line 100, which is nowhere near the middle. Now, you could argue that putting examples 100 lines in is still too far. So what's in the first ~100 lines? A brief -- yes, 100 lines is brief for a tool as powerful as rsync -- description of what rsync is for. Thus, IMO it's already putting examples as near the top as possible.

> Or maybe we have a legit disagreement about what makes a good man page.

Perhaps. rsync's man page is certainly good, but maybe not great. It's very long, but that's unavoidable given it's got so many features. But it could be broken down into multiple man pages instead of one huge monolithic one.

Nevertheless, it's comprehensive, which is more than a lot of other man pages could claim.


Type / which is the command for search in less, the usual pager that displays the man page.


What if I don't know what options are there so I have to read or skip the examples to find the options? Most manage use is skimming the terse options section to remember what flag matches with an option and to remember which options I want.

I know how to search, it's the only man page I know that is formated this way and I find it to be a very poor design choice. As if I know what I wanted I wouldn't be looking in the man page.


Every time I read the man page for rsync, I find myself wishing thevdocumentation was in texinfo format.


Unrelated, but if you are looking for an alternative on FreeBSD you could consider using zfs and zfs sync


That's… wildly different. Yeah, for backups, snapshots + zfs send is amazing, but rsync is a general purpose file sync tool.


zfs send is also a general purpose file sync tool, it just has the limitation that server side and client side must use ZFS.

The advantage of RSync is that it is independent of the file system - which is at the same time a huge disadvantage of RSync, as it prevents RSync from performing optimizations which zfs send can do.


> zfs send is also a general purpose file sync tool, it just has the limitation that server side and client side must use ZFS.

That's… not general-purpose at all. zfs send is a specific-purpose tool, the specific purpose being to serialise and output a ZFS snapshot.


You can coax rsync into using rsh via --rsh=rsh too. Ssh is just the default external cmd it calls.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: