File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / rsync / support / mapfrom
Revision 1.1: download - view: text, annotated - select for diffs - revision graph
Mon Oct 14 07:51:15 2013 UTC (10 years, 8 months ago) by misho
CVS tags: MAIN, HEAD
Initial revision

#!/usr/bin/perl
# This helper script makes it easy to use a passwd or group file to map
# values in a LOCAL transfer.  For instance, if you mount a backup that
# does not have the same passwd setup as the local machine, you can do
# a copy FROM the backup area as follows and get the differing ID values
# mapped just like a remote transfer FROM the backed-up machine would do:
#
# rsync -av --usermap=`mapfrom /mnt/backup/etc/passwd` \
#           --groupmap=`mapfrom /mnt/backup/etc/group` \
#           /mnt/backup/some/src/ /some/dest/

while (<>) {
    push @_, "$2:$1" if /^(\w+):[^:]+:(\d+)/;
}
print join(',', @_), "\n";

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>