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

📄 cull_options

📁 Rsync 3.0.5 source code
💻
字号:
#!/usr/bin/perl# This script outputs some perl code that parses all possible options# that the code in options.c might send to the server.  This perl code# is included in the rrsync script.use strict;our %short_no_arg;our %short_with_num;our %long_opt = (    'no-i-r' => 0,    'fake-super' => 0,    'log-file' => 3,);our $last_long_opt;open(IN, '../options.c') or die "Unable to open ../options.c: $!\n";while (<IN>) {    if (/\Qargstr[x++]\E = '([^.ie])'/) {	$short_no_arg{$1} = 1;	undef $last_long_opt;    } elsif (/\Qasprintf(\E[^,]+, "-([a-zA-Z0-9])\%l?[ud]"/) {	$short_with_num{$1} = 1;	undef $last_long_opt;    } elsif (/\Qargs[ac++]\E = "--([^"=]+)"/) {	$last_long_opt = $1;	$long_opt{$1} = 0;    } elsif (defined($last_long_opt)	&& /\Qargs[ac++]\E = ([^["\s]+);/ && $1 ne 'dest_option') {	$long_opt{$last_long_opt} = 2;	undef $last_long_opt;    } elsif (/dest_option = "--([^"]+)"/) {	$long_opt{$1} = 2;	undef $last_long_opt;    } elsif (/\Qasprintf(\E[^,]+, "--([^"=]+)=/ || /\Qargs[ac++]\E = "--([^"=]+)=/) {	$long_opt{$1} = 1;	undef $last_long_opt;    }}close IN;my $short_no_arg = join('', sort keys %short_no_arg);my $short_with_num = join('', sort keys %short_with_num);print <<EOT;# These options are the only options that rsync might send to the server,# and only in the option format that the stock rsync produces.# To disable a short-named option, add its letter to this string:our \$short_disabled = 's';our \$short_no_arg = '$short_no_arg'; # DO NOT REMOVE ANYour \$short_with_num = '$short_with_num'; # DO NOT REMOVE ANY# To disable a long-named option, change its value to a -1.  The values mean:# 0 = the option has no arg; 1 = the arg doesn't need any checking; 2 = only# check the arg when receiving; and 3 = always check the arg.our \%long_opt = (EOTforeach my $opt (sort keys %long_opt) {    my $val = $long_opt{$opt};    $val = 1 if $opt =~ /^(max-|min-)/;    $val = 3 if $opt eq 'files-from';    $val = '$ro ? -1 : ' . $val if $opt =~ /^remove-/;    print "  '$opt' => $val,\n";}print ");\n\n";

⌨️ 快捷键说明

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