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

📄 fsgs2bnetd.pl

📁 打魔兽战网的都知道他是什么
💻 PL
字号:
#!/usr/bin/perl#Usage: fsgs2bnetd "source directory" "destination directory"#source directory:    directory contains fsgs account files #destnation directory: directory to save newly created bnetd #                      accounts,should exist before run this # #there is another change made to bnetd account in this script #i think fsgs account filename format <username> is better #than using bnetd's <userid>, so i kept it in fsgs format. #you may change it by edit the script yourself   $ARGV[1] eq "" && die "error arguments"; $s_dir=$ARGV[0]; $d_dir=$ARGV[1]; opendir(DIR,$s_dir) || die "error open dir"; @files= grep { /^[^.]/ && -f "$s_dir/$_" } readdir(DIR); closedir DIR; $userid=1; $fsgs{'name'}="\"BNET\\\\acct\\\\username\""; $fsgs{'password'}="\"BNET\\\\acct\\\\passhash1\""; foreach (@files){        open(S_FILE,"$s_dir/$_") || die "error open s_file: $_\n";	$dest_file=lc("$d_dir/$_");	        open(D_FILE,">$dest_file") || die "error open d_file: $_\n";	while (<S_FILE>)	{                 chop($_);                 ($name,$value)=split(/:/,$_); 		foreach (keys %fsgs)		{                         if ($_ eq $name)			{                                 if ( $_ eq "password" )				{                                         $value=&passconv($value);                                }                                print D_FILE "$fsgs{$_}=\"$value\"\n";                                 break;                        }                }        }	        print D_FILE "\"BNET\\\\acct\\\\userid\"=\"$userid\"\n";         $userid++;         close(S_FILE);         close(D_FILE); }sub passconv{	($f_pass)=@_;	my ($d_pass)="";	$f_pass=lc($f_pass);	$length=length($f_pass);		for ($i=0;$i<=$length;$i=$i+2)	{	        $a=2*(int(($i/2)/4)*8+3-$i/2);        	$d_pass .= substr($f_pass,$a,2);	}		return $d_pass;}

⌨️ 快捷键说明

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