deflocale.sh revision 3261:a06412e13bf7
1# 
2# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4# 
5# This code is free software; you can redistribute it and/or modify it
6# under the terms of the GNU General Public License version 2 only, as
7# published by the Free Software Foundation.
8# 
9# This code is distributed in the hope that it will be useful, but WITHOUT
10# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12# version 2 for more details (a copy is included in the LICENSE file that
13# accompanied this code).
14# 
15# You should have received a copy of the GNU General Public License version
16# 2 along with this work; if not, write to the Free Software Foundation,
17# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18# 
19# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20# or visit www.oracle.com if you need additional information or have any
21# questions.
22#
23#!/bin/sh
24#
25#
26#
27# A simple tool to output all the installed locales on a Unix machine, and 
28# corresponding Java default locale/file.encoding using PrintDefaultLocale
29#
30# Usage: "deflocale.sh <java launcher>
31#
32cat /etc/*release
33uname -a
34echo "Testing all available locales"
35/usr/bin/locale -a | while read line; do
36    echo ""
37    echo "OS Locale: " $line
38    env LC_ALL= LC_CTYPE= LC_MESSAGES= LANG=$line $1 $2 $3 $4 $5 $6 $7 $8 $9 PrintDefaultLocale
39done
40
41echo ""
42echo "Testing some typical combinations"
43echo ""
44while read lcctype lcmessages; do
45    if [ "$lcctype" = "#" -o "$lcctype" = "" ]; then
46        continue
47    fi
48    echo ""
49    echo "OS Locale (LC_CTYPE: "$lcctype", LC_MESSAGES: "$lcmessages")"
50    env LC_ALL= LC_CTYPE=$lcctype LC_MESSAGES=$lcmessages $1 $2 $3 $4 $5 $6 $7 $8 $9 PrintDefaultLocale
51done < deflocale.input
52