Two simple scripts. Use with caution and at your own risk. Might eat your machine and piss off all your users.
!/usr/bin/perl
`rm -fR wordpress`;
`wget http://wordpress.org/latest.zip`;
`unzip latest.zip`;
@all = `ls -la /home/|awk '{print $3}'|grep -v root`;
foreach(@all) {
chomp;
next if /^$/;
`./updatewp $_`;
}
#!/usr/bin/perl
$host = `hostname`;
chomp($host);
$u = $ARGV[0];
exit if !$u; # user as arg
exit if not -f "/home/$u/public_html/wp-config.php"; # not wp install
# you shouldn't actually have the readme.html, but if it's there it's a bit faster
$v1 = `cat /home/$u/public_html/readme.html|grep Version > dev/null`;
$v1 =~ /Version (d+.d+.d+)/;
$v1 = $1;
$v2 = `cat wordpress/readme.html|grep Version`;
$v2 =~ /Version (d+.d+.d+)/;
$v2 = $1;
exit if $v1 eq $v2; # already updated
`cp -a wordpress /home/$u/wp_int`;
`cp -rpf /home/$u/public_html/wp-config.php /home/$u/wp_int`;
`cp -rpf /home/$u/public_html/wp-content/* /home/$u/wp_int/wp-content/`;
`cp -rpf /home/$u/public_html/.htaccess /home/$u/wp_int/`;
`chown $u.$u /home/$u/wp_int`;
`cp -a /home/$u/public_html /home/$u/wpback`date +%d%m%y``;
`cp -rpf /home/$u/wp_int/* /home/$u/public_html/`;
`rm -fR /home/$u/wp_int`;
$x = `lynx -dump http://$host/~$u/wp-admin/upgrade.php`;
if ($x =~ /Database Upgrade Required/isgm) {
`lynx -dump http://$host/~$u/wp-admin/upgrade.php?step=1&backto=`;
}
print "Updated $un";
Be the first to leave a comment. Don’t be shy.