Some old stuff
This commit is contained in:
commit
8318550036
2
bash/automail/mailList
Normal file
2
bash/automail/mailList
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
root
|
||||||
|
monkenix@gmail.com
|
1
bash/automail/mailListProxy
Normal file
1
bash/automail/mailListProxy
Normal file
@ -0,0 +1 @@
|
|||||||
|
root
|
61
bash/automail/mailip
Normal file
61
bash/automail/mailip
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
PREVIP=$(cat /opt/utils/StoredIP)
|
||||||
|
MAILFILE="Tempfile2"
|
||||||
|
TRYCOUNT=10
|
||||||
|
while [ TRUE ]; do
|
||||||
|
|
||||||
|
if [ $TRYCOUNT -le 0 ]; then
|
||||||
|
echo Error occured.
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
CURRENTIP=$(curl --silent http://checkip.dyndns.org/|grep -Eo '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}')
|
||||||
|
STATUS=$?
|
||||||
|
sleep 5
|
||||||
|
if [ ! $STATUS ]; then
|
||||||
|
let TRYCOUNT-=1
|
||||||
|
elif [ ! "$CURRENTIP" ]; then
|
||||||
|
let TRYCOUNT-=1
|
||||||
|
else
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "$PREVIP" = "$CURRENTIP" ]
|
||||||
|
then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
touch $MAILFILE
|
||||||
|
exec 6>&1
|
||||||
|
exec > $MAILFILE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
echo This is an auto generated mail to notify the server IP had updated:
|
||||||
|
echo 這是一封自動發送的電郵,以通知服務器地址經已更新:
|
||||||
|
echo
|
||||||
|
echo Server Address:
|
||||||
|
echo 服務器地址:
|
||||||
|
echo $CURRENTIP
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo Pleas do not reply to this email.
|
||||||
|
echo 請勿回覆。
|
||||||
|
echo If you have any questions, please feel free to contact tgckpg@gmail.com
|
||||||
|
echo 如有任何疑問,請電郵至tgckpg@gmail.com
|
||||||
|
echo
|
||||||
|
echo Regards,
|
||||||
|
echo 祝 安康
|
||||||
|
echo Penguin 鵬兄
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo $CURRENTIP > /opt/utils/StoredIP
|
||||||
|
|
||||||
|
while read line
|
||||||
|
do mutt -s "通知Notice: 服務器地址已變更New address for server." -- $line < $MAILFILE
|
||||||
|
done < /opt/utils/mailList
|
||||||
|
rm $MAILFILE
|
||||||
|
|
79
bash/automail/mailpasswd
Normal file
79
bash/automail/mailpasswd
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
MAILFILE="Tempfile"
|
||||||
|
|
||||||
|
TRYCOUNT=10
|
||||||
|
while [ TRUE ]; do
|
||||||
|
|
||||||
|
if [ $TRYCOUNT -le 0 ]; then
|
||||||
|
echo Error occured.
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
CURRENTIP=$(curl --silent http://checkip.dyndns.org/|grep -Eo '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}')
|
||||||
|
STATUS=$?
|
||||||
|
sleep 5
|
||||||
|
if [ ! $STATUS ]; then
|
||||||
|
let TRYCOUNT-=1
|
||||||
|
elif [ ! "$CURRENTIP" ]; then
|
||||||
|
let TRYCOUNT-=1
|
||||||
|
else
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
touch $MAILFILE
|
||||||
|
exec 6>&1 # Link file descriptor #6 with stdout.
|
||||||
|
# Saves stdout.
|
||||||
|
exec > $MAILFILE # stdout replaced with file $LOGFILE.
|
||||||
|
PSDDLEN=$(((RANDOM % 9) + 16))
|
||||||
|
PASS=$( java -jar /opt/utils/pwgen.jar $PSDDLEN )
|
||||||
|
htpasswd -b /var/auths/squid proxyuser $PASS
|
||||||
|
|
||||||
|
|
||||||
|
echo This is an auto generated mail to notify the password had changed for the proxy server:
|
||||||
|
echo 這是一封自動發送的電郵通知,密碼經已變更,登入時請使用新的密碼〔於「」內〕:
|
||||||
|
echo Passward \(enclosed in 「」\):
|
||||||
|
echo
|
||||||
|
echo 「$PASS」
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo Additional Information:
|
||||||
|
echo 附加資訊:
|
||||||
|
echo
|
||||||
|
echo Server Address:
|
||||||
|
echo 服務器地址:
|
||||||
|
echo $CURRENTIP
|
||||||
|
echo
|
||||||
|
echo Server port:
|
||||||
|
echo 服務器端口:
|
||||||
|
echo
|
||||||
|
echo 3128
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo Please be awared that the password will change for each week.
|
||||||
|
echo 請留意密碼會每星期變更一次。
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo Pleas do not reply to this email.
|
||||||
|
echo 請勿回覆。
|
||||||
|
echo If you have any questions, please feel free to contact tgckpg@gmail.com
|
||||||
|
echo 如有任何疑問,請電郵至tgckpg@gmail.com
|
||||||
|
echo
|
||||||
|
echo Regards,
|
||||||
|
echo 祝 安康
|
||||||
|
echo Penguin 鵬兄
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo Password Generator powered by Moonbird.
|
||||||
|
|
||||||
|
|
||||||
|
while read line
|
||||||
|
do mutt -s "通知Notice: 密碼已變更New pasword for squid proxy server." -- $line < $MAILFILE
|
||||||
|
done < /opt/utils/mailListProxy
|
||||||
|
|
||||||
|
rm $MAILFILE
|
||||||
|
|
5
bash/cronbackup/backup.log
Normal file
5
bash/cronbackup/backup.log
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Mounting /media/backup_mirror/ ...
|
||||||
|
Checking for expired backups blogAPI.git (2)
|
||||||
|
Checking for expired backups wenku8.git (2)
|
||||||
|
Checking for expired backups wenku8 (4)
|
||||||
|
Checking for expired backups file (2)
|
79
bash/cronbackup/backup.sh
Normal file
79
bash/cronbackup/backup.sh
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# IO Redirection
|
||||||
|
exec > backup.log
|
||||||
|
|
||||||
|
# exec 2> backup_err.log
|
||||||
|
|
||||||
|
BAKDIR=/media/backup_mirror
|
||||||
|
|
||||||
|
if ! grep -qs $BAKDIR /proc/mounts; then
|
||||||
|
echo Mounting $BAKDIR ...
|
||||||
|
mount $BAKDIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
while read line; do
|
||||||
|
|
||||||
|
# substring first char
|
||||||
|
firstChr=${line::1}
|
||||||
|
|
||||||
|
# if line is not empty and does not start with "#"
|
||||||
|
|
||||||
|
if [ $firstChr ] && [ $firstChr != "#" ]; then
|
||||||
|
|
||||||
|
# file and arguments are seperated by ":"
|
||||||
|
IFS=':' read -ra ARGS <<< "$line"
|
||||||
|
|
||||||
|
# Get file
|
||||||
|
FILE=${ARGS[0]}
|
||||||
|
|
||||||
|
# if file exists
|
||||||
|
if [ -a $FILE ]; then
|
||||||
|
|
||||||
|
# filename
|
||||||
|
FILENAME=$(basename $FILE)
|
||||||
|
|
||||||
|
# set the backup name YYYYMMDDhhmm
|
||||||
|
BACKUPFILE=$(date +$FILENAME.%Y%m%d%H%M.tar.gz)
|
||||||
|
|
||||||
|
# exclude file
|
||||||
|
EXCLUDE="exclude/${ARGS[1]}"
|
||||||
|
|
||||||
|
if [ -f $EXCLUDE ]; then
|
||||||
|
tar zcf "$BAKDIR/$BACKUPFILE" -C "$FILE/../" $FILENAME -X $EXCLUDE
|
||||||
|
else
|
||||||
|
tar zcf "$BAKDIR/$BACKUPFILE" -C "$FILE/../" $FILENAME
|
||||||
|
fi
|
||||||
|
|
||||||
|
# count backup file
|
||||||
|
fCount=$(ls $BAKDIR/*$FILENAME*.gz|wc -l)
|
||||||
|
|
||||||
|
echo Checking for expired backups $FILENAME \($fCount\)
|
||||||
|
|
||||||
|
# keep up to 7 backup
|
||||||
|
if [ $fCount -ne 7 ]; then
|
||||||
|
|
||||||
|
# delete count
|
||||||
|
dCount=`expr $fCount - 7`
|
||||||
|
|
||||||
|
# loop over files
|
||||||
|
for files in $BAKDIR/*$FILENAME*.gz; do
|
||||||
|
if [ 0 -lt $dCount ]; then
|
||||||
|
|
||||||
|
# remove expired file
|
||||||
|
rm "$files";
|
||||||
|
|
||||||
|
# dCount --
|
||||||
|
dCount=$((dCount-1));
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
# echo --\> $line
|
||||||
|
done < backup_list
|
||||||
|
|
||||||
|
umount $BAKDIR
|
0
bash/cronbackup/backup_err.log
Normal file
0
bash/cronbackup/backup_err.log
Normal file
8
bash/cronbackup/backup_list
Normal file
8
bash/cronbackup/backup_list
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# git backups
|
||||||
|
/srv/repo/blogAPI.git
|
||||||
|
/srv/repo/wenku8.git
|
||||||
|
/wenku8-android.git
|
||||||
|
|
||||||
|
# www
|
||||||
|
/var/www/wenku8
|
||||||
|
/var/www/file:file.txt
|
2
bash/cronbackup/exclude/file.txt
Normal file
2
bash/cronbackup/exclude/file.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
blog
|
||||||
|
public
|
5
deprecated/bash/amuleComplete.sh
Normal file
5
deprecated/bash/amuleComplete.sh
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
cd /opt/utils
|
||||||
|
fileName=$(java Main_mod $1)
|
||||||
|
cd /media/Misc/Temp
|
||||||
|
mv $1 $fileName
|
44
php/pkgstat.php
Normal file
44
php/pkgstat.php
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
function delUponExit() {
|
||||||
|
if(is_file('/tmp/php.apt_history.log'))
|
||||||
|
unlink('/tmp/php.apt_history.log');
|
||||||
|
}
|
||||||
|
register_shutdown_function('delUponExit');
|
||||||
|
|
||||||
|
$i = 1;
|
||||||
|
exec("ls /var/log/apt/history.log.*.gz", $list);
|
||||||
|
foreach($list as $entry) {
|
||||||
|
$lines = gzfile($entry);
|
||||||
|
file_put_contents("/tmp/php.apt_history.log", $lines, FILE_APPEND);
|
||||||
|
}
|
||||||
|
$list = null;
|
||||||
|
exec("cat /var/log/apt/history.log >> /tmp/php.apt_history.log");
|
||||||
|
exec('cat /tmp/php.apt_history.log |egrep --regexp=\'^Commandline:\sapt-get\s[(install)(remove)(purge)]\'|awk \'{print $3" "$4}\'', $list);
|
||||||
|
$i = 0; $j = 0;
|
||||||
|
foreach($list as $entry) {
|
||||||
|
$history=explode(" ", $entry);
|
||||||
|
if($history[0] == "autoremove" || $history[0] == "upgrade")continue;
|
||||||
|
$history[0] == "install" ? ($packages[$history[1]]=true):($packages[$history[1]]=false);
|
||||||
|
}
|
||||||
|
foreach($packages as $package => $stat) {
|
||||||
|
$stat ? ($ipackage[$i ++] = $package):($rpackage[$j ++] = $package);
|
||||||
|
}
|
||||||
|
$i = sizeOf($ipackage);
|
||||||
|
$j = sizeOf($rpackage);
|
||||||
|
|
||||||
|
$l = $i > $j ? $i:$j;
|
||||||
|
echo "Custom package activities(apt-get):\n";
|
||||||
|
echo "+---------------------------------------------------------+\n";
|
||||||
|
echo "| Package(s) installed | Package(s) removed |\n";
|
||||||
|
echo "|----------------------------+----------------------------|\n";
|
||||||
|
$ll = .5*(strlen("+---------------------------------------------------------+") - 3);
|
||||||
|
for($k = 0; $k < $l; $k ++) {
|
||||||
|
$il = str_pad($k < $i ? $ipackage[$k]:"", $ll, " ", STR_PAD_BOTH);
|
||||||
|
$rl = str_pad($k < $j ? $rpackage[$k]:"", $ll, " ", STR_PAD_BOTH);
|
||||||
|
|
||||||
|
|
||||||
|
echo "|$il|$rl|\n";
|
||||||
|
}
|
||||||
|
echo "+---------------------------------------------------------+\n";
|
||||||
|
?>
|
228
php/regRename.php
Normal file
228
php/regRename.php
Normal file
@ -0,0 +1,228 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
error_reporting ( E_ALL^E_NOTICE ) ;
|
||||||
|
|
||||||
|
//----------- Usage -----------
|
||||||
|
|
||||||
|
if ( !$argv[1] )
|
||||||
|
die ( "Usage: php {$argv[0]} [options] [-d directory] [-p patterns] [-s \"first match\" \"second\" ...] [...args]\n
|
||||||
|
-d <paths> Directories to look over
|
||||||
|
-p <patterns> Define RegEx patterns
|
||||||
|
-r Rename file recursively
|
||||||
|
-s <str ...> Strings that will replace the matches
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
*-e <patterns> Exclude defined pattern
|
||||||
|
*-l <File> Output log file
|
||||||
|
-t Test without modifying anything
|
||||||
|
|
||||||
|
*Not available yet.
|
||||||
|
|
||||||
|
" ) ;
|
||||||
|
|
||||||
|
//------- End Usage -----------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//Define globals
|
||||||
|
$test = false;
|
||||||
|
$recursive = false;
|
||||||
|
$searchDirs = array();
|
||||||
|
$patterns = array();
|
||||||
|
$replaceStrs = array();
|
||||||
|
|
||||||
|
//------- Main Functions --------
|
||||||
|
function getDirName ( $dir ) {
|
||||||
|
return is_dir ( $dir ) ? $dir : dirname ( $dir ) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getFileList ( $dir ) {
|
||||||
|
$fileList = array();
|
||||||
|
$iterator = new DirectoryIterator ( getDirName ( $dir ) ) ;
|
||||||
|
foreach ( $iterator as $fileinfo ) {
|
||||||
|
if ( $fileinfo->isFile() ) {
|
||||||
|
$fileList[] = $dir."/".$fileinfo->getFilename();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $fileList;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getDirList ( $dir ) {
|
||||||
|
$dirList = array();
|
||||||
|
$iterator = new DirectoryIterator ( getDirName ( $dir ) ) ;
|
||||||
|
foreach ( $iterator as $fileinfo ) {
|
||||||
|
if ( $fileinfo->isDir() ) {
|
||||||
|
$dirList[] = $fileinfo->getFilename();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//Chop dir "." and ".."
|
||||||
|
array_shift ( $dirList ) ;
|
||||||
|
array_shift ( $dirList ) ;
|
||||||
|
return $dirList;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getWholeDirList ( $dir ) {
|
||||||
|
$wholeDirList = array();
|
||||||
|
//getWholeDirList will stop untill getDirList return an empty array.
|
||||||
|
foreach ( getDirList ( $dir ) as $file ) {
|
||||||
|
//Store found path
|
||||||
|
$wholeDirList[] = "$dir/$file";
|
||||||
|
//Method getWholeDirList will self-iterate if sub-directories exist.
|
||||||
|
$wholeDirList = array_merge ( $wholeDirList, getWholeDirList ( "$dir/$file" ) ) ;
|
||||||
|
}
|
||||||
|
return $wholeDirList;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getWholeFileList ( $dir ) {
|
||||||
|
//Get the first level list.
|
||||||
|
$wholeFileList = getFileList( $dir );
|
||||||
|
//getWholeDirList and search its files.
|
||||||
|
foreach ( getWholeDirList ( $dir ) as $dir ) {
|
||||||
|
$wholeFileList = array_merge ( $wholeFileList, getFileList ( $dir ) ) ;
|
||||||
|
}
|
||||||
|
return $wholeFileList;
|
||||||
|
}
|
||||||
|
|
||||||
|
function validateOptions ( ) {
|
||||||
|
global $searchDirs, $patterns, $replaceStrs;
|
||||||
|
|
||||||
|
try {
|
||||||
|
if(count($searchDirs) == 0)
|
||||||
|
throw new Exception("Search directory is missing");
|
||||||
|
else if(count($patterns) == 0)
|
||||||
|
throw new Exception("Search pattern is missing");
|
||||||
|
else if(count($replaceStrs) == 0)
|
||||||
|
throw new Exception("Replacement string is missing");
|
||||||
|
else if(count($replaceStrs) != count($patterns))
|
||||||
|
throw new Exception("Replacement string and pattern count not match");
|
||||||
|
} catch(Exception $e) {
|
||||||
|
var_dump( $GLOBALS );
|
||||||
|
die("Error: $e.\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function setOptions( $item, $value = NULL ) {
|
||||||
|
global $test, $recursive, $searchDirs, $patterns, $replaceStrs;
|
||||||
|
switch($item) {
|
||||||
|
case "-d":
|
||||||
|
if($value)
|
||||||
|
$searchDirs[] = $value;
|
||||||
|
break;
|
||||||
|
case "-p":
|
||||||
|
if($value)
|
||||||
|
$patterns[] = $value;
|
||||||
|
break;
|
||||||
|
case "-r":
|
||||||
|
$recursive = true;
|
||||||
|
break;
|
||||||
|
case "-s":
|
||||||
|
if($value)
|
||||||
|
$replaceStrs[] = $value;
|
||||||
|
break;
|
||||||
|
case "-t":
|
||||||
|
$test = true;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
//Do nothing
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//parseOptions utilitiese by tgckpg
|
||||||
|
function parseOptions ( $argStream, $handler ) {
|
||||||
|
//Chop first useless argument -- argv[0]
|
||||||
|
array_shift ( $argStream ) ;
|
||||||
|
//Initiate ArrayObject for iterator
|
||||||
|
$arrayobject = new ArrayObject ( $argStream ) ;
|
||||||
|
//Initiate iterator for iteration
|
||||||
|
$iterator = $arrayobject->getIterator();
|
||||||
|
|
||||||
|
//If options is set first
|
||||||
|
if( $iterator->valid() && preg_match ( '/^-\w$/', $iterator->current() ) ) {
|
||||||
|
//iterate through whole argument stream
|
||||||
|
for ( ; $iterator->valid(); $iterator->next() ) {
|
||||||
|
//Check if reached next option
|
||||||
|
if( preg_match ( '/^-\w$/', $opts = $iterator->current() ) ) {
|
||||||
|
//Get current options
|
||||||
|
$currOpt = $opts;
|
||||||
|
//echo "$currOpt\n";
|
||||||
|
//Test if next stream is an option
|
||||||
|
for ( $iterator->next(); $iterator->valid(); $iterator->next() ) {
|
||||||
|
if ( preg_match ( '/^-\w$/', $opts = $iterator->current() ) ) {
|
||||||
|
//echo "$currOpt $opts\n";
|
||||||
|
$handler($currOpt);
|
||||||
|
$currOpt = $opts;
|
||||||
|
} else break;
|
||||||
|
//var_dump($iterator->valid());
|
||||||
|
}
|
||||||
|
}//End if
|
||||||
|
//echo "$currOpt $opts\n";
|
||||||
|
$handler($currOpt, $opts);
|
||||||
|
//A temporary fix for infinite loop
|
||||||
|
if(!$iterator->valid())
|
||||||
|
break;
|
||||||
|
}// End for
|
||||||
|
//If option is not set first.
|
||||||
|
} else {
|
||||||
|
//Try other approach.
|
||||||
|
}// End if
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//------- End Main Functions --------
|
||||||
|
|
||||||
|
|
||||||
|
parseOptions ( $argv, 'setOptions' ) ;
|
||||||
|
validateOptions();
|
||||||
|
|
||||||
|
|
||||||
|
//------- Begin Operations -------
|
||||||
|
foreach ( $searchDirs as $dir ) {
|
||||||
|
echo "Directory: $dir\nBuilding file list ...\n";
|
||||||
|
if ( $recursive ) {
|
||||||
|
$fileList = getWholeFileList($dir);
|
||||||
|
} else {
|
||||||
|
$fileList = getFileList($dir);
|
||||||
|
}
|
||||||
|
echo "Searching ...\n";
|
||||||
|
foreach ( $fileList as $file ) {
|
||||||
|
//
|
||||||
|
// Get the file name
|
||||||
|
// RegExplained:
|
||||||
|
// Example: /foo/bar/foobar.bar
|
||||||
|
// $matches[0][0] is the whole string "/foo/bar/foobar.bar"
|
||||||
|
//
|
||||||
|
// ^(.+?)
|
||||||
|
// This gets the file path "/foo/bar/" for $matches[1][0]
|
||||||
|
//
|
||||||
|
// ([^\/\\\\]+)$
|
||||||
|
// This gets the file name "foobar.bar" for $matches[2][0]
|
||||||
|
//
|
||||||
|
preg_match_all('/^(.+?)([^\/\\\\]+)$/', $file, $matches );
|
||||||
|
$newName = $matches[2][0];
|
||||||
|
foreach ( $patterns as $key => $pattern ) {
|
||||||
|
//Rename over the patterns
|
||||||
|
$newName = preg_replace( $pattern, $replaceStrs[$key], $newName );
|
||||||
|
}
|
||||||
|
if( $matches[2][0] != $newName ) {
|
||||||
|
if( $test ) {
|
||||||
|
echo "File \"{$matches[2][0]}\" will renamed to \"$newName\"\n";
|
||||||
|
} else {
|
||||||
|
rename ( $file, "{$matches[1][0]}$newName" );
|
||||||
|
}
|
||||||
|
if ( $logfile ) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}/* else {
|
||||||
|
echo "File \"{$matches[0][0]}\" will not be renamed\n";
|
||||||
|
}
|
||||||
|
//*/
|
||||||
|
}
|
||||||
|
echo "\n";
|
||||||
|
}
|
||||||
|
if ( $test ) echo "*** Test enabled ***\n\n";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//------- End Operations -------*/
|
||||||
|
?>
|
Loading…
Reference in New Issue
Block a user