⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mnt-excl

📁 Rsync 3.0.5 source code
💻
字号:
#!/usr/bin/perl -w# This script takes a command-line arg of a source directory# that will be passed to rsync, and generates a set of excludes# that will exclude all mount points from the list.  This is# useful if you have "bind" mounts since the --one-file-system# option won't notice the transition to a different spot on# the same disk.  For example:## mnt-excl /dir | rsync --exclude-from=- ... /dir /dest/# mnt-excl /dir/ | rsync --exclude-from=- ... /dir/ /dest/# ssh host mnt-excl /dir | rsync --exclude-from=- ... host:/dir /dest/## Imagine that /dir/foo is a mount point: the first invocation of# mnt-excl would have output /dir/foo, while the second would have# output /foo (which are the properly anchored excludes).## NOTE:  This script expects /proc/mounts to exist, but could be# easily adapted to read /etc/mtab or similar.## ADDENDUM:  The addition of the --filter option (which has support for# absolute-anchored excludes) has made this script less useful than it# was.  Beginning with 2.6.4, you can achieve the effect of this script# through this command:## awk '{print $2}' /proc/mounts | rsync -f 'merge,/- -' host:/dir /dest/use strict;use Cwd 'abs_path';my $file = '/proc/mounts';my $dir = shift || '/';$dir = abs_path($dir);$dir =~ s#([^/]*)$##;my $trailing = $1;$trailing = '' if $trailing eq '.' || !-d "$dir$trailing";$trailing .= '/' if $trailing ne '';open(IN, $file) or die "Unable to open $file: $!\n";while (<IN>) {    $_ = (split)[1];    next unless s#^\Q$dir$trailing\E##o && $_ ne '';    print "- /$trailing$_\n";}close IN;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -