架設ROSE私服必備之物 ROSE數據庫
源代码在线查看: lang-cleanup.sh
#!/bin/sh # # $Id: lang-cleanup.sh 9514 2006-10-07 14:32:44Z lem9 $ # vim: expandtab sw=4 ts=4 sts=4: # # Script for removing language selection from phpMyAdmin if [ $# -lt 1 ] ; then echo "Usage: lang-cleanup.sh type ..." echo "Type can be one of:" echo " all-languages - nothing will be done" echo " all-languages-utf-8-only - non utf-8 languages will be deleted" echo " language - keeps utf-8 version of language" echo " language-charset - keeps this exact language" echo echo "Types can be entered multiple times, all matched languages will be kept" exit 1 fi # Construct expressions for find match="" for type in "$@" ; do case $type in all-languages) match="$match -and -false" ;; all-languages-utf-8-only) match="$match -and -not -name *-utf-8.inc.php" ;; *) if [ -f lang/$type-utf-8.inc.php ] ; then match="$match -and -not -name $type-utf-8.inc.php" elif [ -f lang/$type.inc.php ] ; then match="$match -and -not -name $type.inc.php" else echo "ERROR: $type seems to be wrong!" exit 2 fi ;; esac done # Delete unvanted languages find lang -name \*.inc.php $match -print0 | xargs -0r rm # Cleanup libraries/select_lang.lib.php # Find languages we have langmatch="$(awk -F, \ 'BEGIN { pr = 1 } ; /^\);/ { pr = 1 } ; {if(!pr) print $2;}; /^\$available_languages/ { pr = 0 };' \ libraries/select_lang.lib.php \ | tr -d \' \ | while read lng ; do if [ -f lang/$lng.inc.php ] ; then echo $lng ; fi ; done \ | tr '\n' '|' \ | sed 's/|$//' \ )" # Prepare working copy tmp=`mktemp libraries/select_lang.lib.php.XXXX` cat libraries/select_lang.lib.php > $tmp # Remove languages we don't have awk -F, \ 'BEGIN { pr = 1 } ; /^\);/ { pr = 1 } ; {if(pr) print $0;}; /'$langmatch'/ {if (!pr) print $0;}; /^\$available_languages/ { pr = 0 };' \ $tmp > libraries/select_lang.lib.php # Final cleanup rm -f $tmp