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

📄 copyconfig.pl

📁 Unix下基于Web的管理工具
💻 PL
字号:
# copyconfig.pl# Copy the appropriate config file for each module into the webmin config# directory. If it is already there, merge in new directives. Called with# <osname> <osversion> <install dir> <config dir> <module>+$os = $ARGV[0];$ver = $ARGV[1];$wadir = $ARGV[2];$confdir = $ARGV[3];# Find all clonesopendir(DIR, $wadir);foreach $f (readdir(DIR)) {	if (readlink("$wadir/$f")) {		@st = stat("$wadir/$f");		push(@{$clone{$st[1]}}, $f);		}	}closedir(DIR);# For each module, copy its config to itself and all clones@mods = @ARGV[4..$#ARGV];foreach $m (@mods) {	$srcdir = "$wadir/$m";	if (-r "$srcdir/config-$os-$ver") {		$conf = "$srcdir/config-$os-$ver";		}	elsif (-r "$srcdir/config-$os") {		$conf = "$srcdir/config-$os";		}	elsif (-r "$srcdir/config") {		$conf = "$srcdir/config";		}	else {		$conf = "/dev/null";		}	@st = stat($srcdir);	@copyto = ( @{$clone{$st[1]}}, $m );	foreach $c (@copyto) {		mkdir("$confdir/$c", 0755);		undef(%oldconf); undef(%newconf);		&read_file("$confdir/$c/config", \%oldconf);		&read_file($conf, \%newconf);		foreach $k (keys %oldconf) {			$newconf{$k} = $oldconf{$k};			}		&write_file("$confdir/$c/config", \%newconf);		}	}# read_file(file, array)# Fill an associative array with name=value pairs from a filesub read_file{local($arr);$arr = $_[1];open(ARFILE, $_[0]) || return 0;while(<ARFILE>) {        chop;        if (!/^#/ && /^([^=]+)=(.*)$/) { $$arr{$1} = $2; }        }close(ARFILE);return 1;} # write_file(file, array)# Write out the contents of an associative array as name=value linessub write_file{local($arr);$arr = $_[1];open(ARFILE, "> $_[0]");foreach $k (keys %$arr) {        print ARFILE "$k=$$arr{$k}\n";        }close(ARFILE);}

⌨️ 快捷键说明

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