This is an automated email from the ASF dual-hosted git repository.

critas pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 1d3a35e76e0 Explicitly specify the JVM character encoding as UTF-8 in 
the shell script (#15961)
1d3a35e76e0 is described below

commit 1d3a35e76e06ad9e4f49c6d06ee6df7033b7ffba
Author: Summer <43237967+2b3c...@users.noreply.github.com>
AuthorDate: Wed Jul 23 11:13:44 2025 +0800

    Explicitly specify the JVM character encoding as UTF-8 in the shell script 
(#15961)
---
 scripts/conf/confignode-env.sh                                 |  5 +++--
 scripts/conf/datanode-env.sh                                   |  1 +
 scripts/conf/windows/confignode-env.bat                        |  4 ++--
 scripts/sbin/start-cli.sh                                      |  3 ++-
 scripts/sbin/start-confignode.sh                               |  8 ++++----
 scripts/sbin/start-datanode.sh                                 | 10 +++++-----
 scripts/sbin/windows/start-cli-table.bat                       |  2 +-
 scripts/sbin/windows/start-cli.bat                             |  2 +-
 scripts/tools/export-data.sh                                   |  4 +++-
 scripts/tools/export-tsfile.sh                                 |  4 +++-
 scripts/tools/import-data.sh                                   |  4 +++-
 scripts/tools/ops/backup.sh                                    |  4 ++--
 scripts/tools/ops/health_check.sh                              |  1 +
 scripts/tools/schema/export-schema.sh                          |  4 +++-
 scripts/tools/schema/import-schema.sh                          |  4 +++-
 scripts/tools/schema/print-pb-tree-file.sh                     |  4 +++-
 scripts/tools/schema/print-schema-log.sh                       |  4 +++-
 .../tools/tsfile/check-overlap-sequence-files-and-repair.sh    |  4 +++-
 scripts/tools/tsfile/overlap-statistic-tool.sh                 |  4 +++-
 scripts/tools/tsfile/print-iotdb-data-dir.sh                   |  4 +++-
 scripts/tools/tsfile/print-tsfile-resource-files.sh            |  4 +++-
 scripts/tools/tsfile/print-tsfile.sh                           |  4 +++-
 scripts/tools/tsfile/settle-tsfile.sh                          |  4 +++-
 scripts/tools/tsfile/split-tsfile-tool.sh                      |  4 +++-
 scripts/tools/tsfile/validate-tsfile.sh                        |  4 +++-
 scripts/tools/wal/print-wal.sh                                 |  4 +++-
 scripts/tools/windows/export-data.bat                          |  2 +-
 scripts/tools/windows/export-tsfile.bat                        |  2 +-
 scripts/tools/windows/import-data.bat                          |  2 +-
 scripts/tools/windows/ops/backup.bat                           |  2 +-
 scripts/tools/windows/schema/export-schema.bat                 |  2 +-
 scripts/tools/windows/schema/import-schema.bat                 |  2 +-
 scripts/tools/windows/schema/print-pb-tree-file.bat            |  4 ++--
 scripts/tools/windows/schema/print-schema-log.bat              |  4 ++--
 .../windows/tsfile/check-overlap-sequence-files-and-repair.bat |  4 ++--
 scripts/tools/windows/tsfile/overlap-statistic-tool.bat        |  4 ++--
 scripts/tools/windows/tsfile/print-iotdb-data-dir.bat          |  4 ++--
 scripts/tools/windows/tsfile/print-tsfile-resource-files.bat   |  4 ++--
 scripts/tools/windows/tsfile/print-tsfile.bat                  |  2 +-
 scripts/tools/windows/tsfile/settle-tsfile.bat                 |  4 ++--
 scripts/tools/windows/tsfile/split-tsfile-tool.bat             |  4 ++--
 scripts/tools/windows/tsfile/validate-tsfile.bat               |  4 ++--
 scripts/tools/windows/wal/print-wal.bat                        |  2 +-
 43 files changed, 96 insertions(+), 60 deletions(-)

diff --git a/scripts/conf/confignode-env.sh b/scripts/conf/confignode-env.sh
index e251f3939c2..edf587b8c2b 100644
--- a/scripts/conf/confignode-env.sh
+++ b/scripts/conf/confignode-env.sh
@@ -319,9 +319,10 @@ if [[ ! "$CONFIGNODE_JMX_OPTS" =~ -Xms ]]; then 
CONFIGNODE_JMX_OPTS="$CONFIGNODE
 if [[ ! "$CONFIGNODE_JMX_OPTS" =~ -Xmx ]]; then 
CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -Xmx${ON_HEAP_MEMORY}"; fi
 if [[ ! "$CONFIGNODE_JMX_OPTS" =~ -XX:MaxDirectMemorySize ]]; then 
CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS 
-XX:MaxDirectMemorySize=${OFF_HEAP_MEMORY}"; fi
 CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS 
-Djdk.nio.maxCachedBufferSize=${MAX_CACHED_BUFFER_SIZE}"
-IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:+CrashOnOutOfMemoryError"
+CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -XX:+CrashOnOutOfMemoryError"
+CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -Dsun.jnu.encoding=UTF-8 
-Dfile.encoding=UTF-8"
 # if you want to dump the heap memory while OOM happening, you can use the 
following command, remember to replace 
${heap_dump_dir}/confignode_heapdump.hprof with your own file path and the 
folder where this file is located needs to be created in advance
-#IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=${heap_dump_dir}/confignode_heapdump.hprof"
+#CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=${heap_dump_dir}/confignode_heapdump.hprof"
 
 echo "ConfigNode on heap memory size = ${ON_HEAP_MEMORY}B, off heap memory 
size = ${OFF_HEAP_MEMORY}B"
 echo "If you want to change this configuration, please check 
conf/confignode-env.sh."
diff --git a/scripts/conf/datanode-env.sh b/scripts/conf/datanode-env.sh
index f19711435e0..31206e550d3 100755
--- a/scripts/conf/datanode-env.sh
+++ b/scripts/conf/datanode-env.sh
@@ -337,6 +337,7 @@ IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -Xss512k"
 # these two options print safepoints with pauses longer than 1000ms to the 
standard output. You can see these logs via redirection when starting in the 
background like "start-datanode.sh > log_datanode_safepoint.log"
 IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:SafepointTimeoutDelay=1000"
 IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:+SafepointTimeout"
+IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
 
 # option below tries to optimize safepoint stw time for large counted loop.
 # NOTE: it may have an impact on JIT's black-box optimization.
diff --git a/scripts/conf/windows/confignode-env.bat 
b/scripts/conf/windows/confignode-env.bat
index 01210b8ef6a..51b0f8de9cc 100644
--- a/scripts/conf/windows/confignode-env.bat
+++ b/scripts/conf/windows/confignode-env.bat
@@ -121,10 +121,10 @@ set /a 
MAX_CACHED_BUFFER_SIZE=%off_heap_memory_size_in_mb%/%IO_THREADS_NUMBER%*1
 set CONFIGNODE_HEAP_OPTS=-Xmx%ON_HEAP_MEMORY% -Xms%ON_HEAP_MEMORY%
 set CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS% 
-XX:MaxDirectMemorySize=%OFF_HEAP_MEMORY%
 set CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS% 
-Djdk.nio.maxCachedBufferSize=%MAX_CACHED_BUFFER_SIZE%
-set IOTDB_HEAP_OPTS=%IOTDB_HEAP_OPTS% -XX:+CrashOnOutOfMemoryError
+set CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS% -XX:+CrashOnOutOfMemoryError
 
 @REM if you want to dump the heap memory while OOM happening, you can use the 
following command, remember to replace /tmp/heapdump.hprof with your own file 
path and the folder where this file is located needs to be created in advance
-@REM IOTDB_JMX_OPTS=%IOTDB_HEAP_OPTS% -XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=\tmp\confignode_heapdump.hprof
+@REM CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS% 
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=\tmp\confignode_heapdump.hprof
 
 @REM You can put your env variable here
 @REM set JAVA_HOME=%JAVA_HOME%
diff --git a/scripts/sbin/start-cli.sh b/scripts/sbin/start-cli.sh
index a5ee21a2799..b864669134f 100755
--- a/scripts/sbin/start-cli.sh
+++ b/scripts/sbin/start-cli.sh
@@ -154,9 +154,10 @@ else
     illegal_access_params="$illegal_access_params 
--add-opens=java.base/java.lang=ALL-UNNAMED"
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
 
 set -o noglob
 
iotdb_cli_params="-Dlogback.configurationFile=${IOTDB_CLI_CONF}/logback-cli.xml"
-exec "$JAVA" $iotdb_cli_params $illegal_access_params -cp "$CLASSPATH" 
"$MAIN_CLASS" $PARAMETERS
+exec "$JAVA" $JVM_OPTS $iotdb_cli_params $illegal_access_params -cp 
"$CLASSPATH" "$MAIN_CLASS" $PARAMETERS
 
 exit $?
diff --git a/scripts/sbin/start-confignode.sh b/scripts/sbin/start-confignode.sh
index 65e1b7bd897..953454dddcf 100644
--- a/scripts/sbin/start-confignode.sh
+++ b/scripts/sbin/start-confignode.sh
@@ -149,19 +149,19 @@ launch_service() {
           if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
             [ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
               # shellcheck disable=SC2154
-              exec $NUMACTL "$JAVA" $JVM_OPTS 
"$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" $illegal_access_params $iotdb_parms 
$CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS
+              exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" 
$illegal_access_params $iotdb_parms $CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp 
"$CLASSPATH" "$class" $PARAMS
           else
               [ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
-              exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params 
$iotdb_parms $CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" 
$PARAMS
+              exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms 
$CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS
           fi
       # Startup IoTDB, background it, and write the pid.
       else
           if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
-                exec $NUMACTL "$JAVA" $JVM_OPTS 
"$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" $illegal_access_params $iotdb_parms 
$CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS 2>&1 > 
/dev/null  <&- &
+                exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" 
$illegal_access_params $iotdb_parms $CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp 
"$CLASSPATH"  "$class" $PARAMS 2>&1 > /dev/null  <&- &
                 [ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
                 true
           else
-                exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params 
$iotdb_parms $CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" 
$PARAMS 2>&1 > /dev/null <&- &
+                exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms 
$CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS 2>&1 > 
/dev/null <&- &
                 [ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
                 true
           fi
diff --git a/scripts/sbin/start-datanode.sh b/scripts/sbin/start-datanode.sh
index 65ff2ac32e0..6927bebf1a0 100755
--- a/scripts/sbin/start-datanode.sh
+++ b/scripts/sbin/start-datanode.sh
@@ -130,7 +130,7 @@ if [ "x$SHOW_VERSION" != "x" ]; then
     else
         JAVA=java
     fi
-    exec "$JAVA" -cp "$CLASSPATH" $IOTDB_JVM_OPTS 
"-Dlogback.configurationFile=${IOTDB_LOG_CONFIG}" "$classname"
+    exec "$JAVA" $IOTDB_JMX_OPTS $IOTDB_JVM_OPTS 
"-Dlogback.configurationFile=${IOTDB_LOG_CONFIG}" -cp "$CLASSPATH" "$classname"
     exit 0
 fi
 
@@ -174,19 +174,19 @@ launch_service()
         iotdb_parms="$iotdb_parms -Diotdb-foreground=yes"
         if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
           [ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
-            exec $NUMACTL "$JAVA" $JVM_OPTS "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" 
$illegal_access_params $iotdb_parms $IOTDB_JMX_OPTS -cp "$CLASSPATH" 
$IOTDB_JVM_OPTS "$class" $PARAMS
+            exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" 
$illegal_access_params $iotdb_parms $IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp 
"$CLASSPATH" "$class" $PARAMS
         else
             [ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
-            exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params 
$iotdb_parms $IOTDB_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS
+            exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms 
$IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS
         fi
     # Startup IoTDB, background it, and write the pid.
     else
         if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
-              exec $NUMACTL "$JAVA" $JVM_OPTS 
"$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" $illegal_access_params $iotdb_parms 
$IOTDB_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS 2>&1 > 
/dev/null  <&- &
+              exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" 
$illegal_access_params $iotdb_parms $IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp 
"$CLASSPATH" "$class" $PARAMS 2>&1 > /dev/null  <&- &
               [ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
               true
         else
-              exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params 
$iotdb_parms $IOTDB_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS 
2>&1 > /dev/null <&- &
+              exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms 
$IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS 2>&1 > 
/dev/null <&- &
               [ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
               true
         fi
diff --git a/scripts/sbin/windows/start-cli-table.bat 
b/scripts/sbin/windows/start-cli-table.bat
index d22a45ef7c6..67b3c318cc9 100644
--- a/scripts/sbin/windows/start-cli-table.bat
+++ b/scripts/sbin/windows/start-cli-table.bat
@@ -106,7 +106,7 @@ IF "%JAVA_VERSION%" == "8" (
 ) ELSE (
     set ILLEGAL_ACCESS_PARAMS=--add-opens=java.base/java.lang=ALL-UNNAMED
 )
-
+set JAVA_OPTS=%JAVA_OPTS% -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 java %ILLEGAL_ACCESS_PARAMS% %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS% 
%PARAMETERS%
 set ret_code=%ERRORLEVEL%
 goto finally
diff --git a/scripts/sbin/windows/start-cli.bat 
b/scripts/sbin/windows/start-cli.bat
index 236775f5716..f79bfb8b962 100644
--- a/scripts/sbin/windows/start-cli.bat
+++ b/scripts/sbin/windows/start-cli.bat
@@ -106,7 +106,7 @@ IF "%JAVA_VERSION%" == "8" (
 ) ELSE (
     set ILLEGAL_ACCESS_PARAMS=--add-opens=java.base/java.lang=ALL-UNNAMED
 )
-
+set JAVA_OPTS=%JAVA_OPTS% -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 java %ILLEGAL_ACCESS_PARAMS% %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS% 
%PARAMETERS%
 set ret_code=%ERRORLEVEL%
 goto finally
diff --git a/scripts/tools/export-data.sh b/scripts/tools/export-data.sh
index 4d69035e9ca..d98d1363aa4 100644
--- a/scripts/tools/export-data.sh
+++ b/scripts/tools/export-data.sh
@@ -49,11 +49,13 @@ if [ -z $JAVA ] ; then
     exit 1;
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 for f in ${IOTDB_HOME}/lib/*.jar; do
     CLASSPATH=${CLASSPATH}":"$f
 done
 
 MAIN_CLASS=org.apache.iotdb.tool.data.ExportData
 
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" 
"$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/export-tsfile.sh b/scripts/tools/export-tsfile.sh
index ccc9df3e3a4..069be4ec81f 100644
--- a/scripts/tools/export-tsfile.sh
+++ b/scripts/tools/export-tsfile.sh
@@ -49,11 +49,13 @@ if [ -z $JAVA ] ; then
     exit 1;
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 for f in ${IOTDB_HOME}/lib/*.jar; do
     CLASSPATH=${CLASSPATH}":"$f
 done
 
 MAIN_CLASS=org.apache.iotdb.tool.tsfile.ExportTsFile
 
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" 
"$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/import-data.sh b/scripts/tools/import-data.sh
index 14789a44a10..48485388d6a 100644
--- a/scripts/tools/import-data.sh
+++ b/scripts/tools/import-data.sh
@@ -49,11 +49,13 @@ if [ -z $JAVA ] ; then
     exit 1;
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 for f in ${IOTDB_HOME}/lib/*.jar; do
     CLASSPATH=${CLASSPATH}":"$f
 done
 
 MAIN_CLASS=org.apache.iotdb.tool.data.ImportData
 
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" 
"$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/ops/backup.sh b/scripts/tools/ops/backup.sh
index 8bd3643d353..47c8e3e6552 100644
--- a/scripts/tools/ops/backup.sh
+++ b/scripts/tools/ops/backup.sh
@@ -133,7 +133,7 @@ logs_dir="${IOTDB_HOME}/logs"
 if [ ! -d "$logs_dir" ]; then
     mkdir "$logs_dir"
 fi
-
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
 IOTDB_CLI_CONF=${IOTDB_HOME}/conf
 
iotdb_cli_params="-Dlogback.configurationFile=${IOTDB_CLI_CONF}/logback-backup.xml"
-exec nohup "$JAVA" -DIOTDB_HOME=${IOTDB_HOME} $iotdb_cli_params -cp 
"$CLASSPATH" "$MAIN_CLASS" "$@" >/dev/null 2>&1 <&- &
+exec nohup "$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} $iotdb_cli_params -cp 
"$CLASSPATH" "$MAIN_CLASS" "$@" >/dev/null 2>&1 <&- &
diff --git a/scripts/tools/ops/health_check.sh 
b/scripts/tools/ops/health_check.sh
index 346d1b9972b..3997ee848b6 100644
--- a/scripts/tools/ops/health_check.sh
+++ b/scripts/tools/ops/health_check.sh
@@ -372,6 +372,7 @@ system_settings_check() {
   fi
 }
 
+
 if [ -n "$operate" ]; then
     if [ "$operate" == "local" ]; then
         system_settings_pre_check
diff --git a/scripts/tools/schema/export-schema.sh 
b/scripts/tools/schema/export-schema.sh
index 8ad2271b795..d79f94902e7 100644
--- a/scripts/tools/schema/export-schema.sh
+++ b/scripts/tools/schema/export-schema.sh
@@ -49,9 +49,11 @@ if [ -z $JAVA ] ; then
     exit 1;
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=${IOTDB_HOME}/lib/*
 
 MAIN_CLASS=org.apache.iotdb.tool.schema.ExportSchema
 
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" 
"$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/schema/import-schema.sh 
b/scripts/tools/schema/import-schema.sh
index a065d33e011..8d17248f1ef 100644
--- a/scripts/tools/schema/import-schema.sh
+++ b/scripts/tools/schema/import-schema.sh
@@ -49,9 +49,11 @@ if [ -z $JAVA ] ; then
     exit 1;
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=${IOTDB_HOME}/lib/*
 
 MAIN_CLASS=org.apache.iotdb.tool.schema.ImportSchema
 
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" 
"$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/schema/print-pb-tree-file.sh 
b/scripts/tools/schema/print-pb-tree-file.sh
index e665f73b054..2d8c62d58b4 100644
--- a/scripts/tools/schema/print-pb-tree-file.sh
+++ b/scripts/tools/schema/print-pb-tree-file.sh
@@ -40,6 +40,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.schema.PBTreeFileSketchTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/schema/print-schema-log.sh 
b/scripts/tools/schema/print-schema-log.sh
index 17ec6626e62..1de39094ecb 100644
--- a/scripts/tools/schema/print-schema-log.sh
+++ b/scripts/tools/schema/print-schema-log.sh
@@ -40,6 +40,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.schema.MLogParser
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh 
b/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
index 398a593c3a0..586aaaa8039 100644
--- a/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
+++ b/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
@@ -40,6 +40,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
 
 
MAIN_CLASS=org.apache.iotdb.db.tools.validate.TsFileOverlapValidationAndRepairTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
diff --git a/scripts/tools/tsfile/overlap-statistic-tool.sh 
b/scripts/tools/tsfile/overlap-statistic-tool.sh
index 570e9d35d4e..e09f86fd7ae 100644
--- a/scripts/tools/tsfile/overlap-statistic-tool.sh
+++ b/scripts/tools/tsfile/overlap-statistic-tool.sh
@@ -40,6 +40,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
 
 
MAIN_CLASS=org.apache.iotdb.db.storageengine.dataregion.compaction.tool.OverlapStatisticTool
 
-"$JAVA" -Xmx16G -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -Xmx16G -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
diff --git a/scripts/tools/tsfile/print-iotdb-data-dir.sh 
b/scripts/tools/tsfile/print-iotdb-data-dir.sh
index 1891952ba7d..fb7e3d86562 100644
--- a/scripts/tools/tsfile/print-iotdb-data-dir.sh
+++ b/scripts/tools/tsfile/print-iotdb-data-dir.sh
@@ -41,6 +41,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -48,5 +50,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.IoTDBDataDirViewer
 
-"$JAVA" -cp "$CLASSPATH" 
"-Dlogback.configurationFile=${IOTDB_HOME}/conf/logback-tool.xml" "$MAIN_CLASS" 
"$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" 
"-Dlogback.configurationFile=${IOTDB_HOME}/conf/logback-tool.xml" "$MAIN_CLASS" 
"$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/print-tsfile-resource-files.sh 
b/scripts/tools/tsfile/print-tsfile-resource-files.sh
index c247e80cf16..0e1d0623d49 100755
--- a/scripts/tools/tsfile/print-tsfile-resource-files.sh
+++ b/scripts/tools/tsfile/print-tsfile-resource-files.sh
@@ -47,6 +47,8 @@ if [ -z $JAVA ] ; then
     exit 1;
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -55,6 +57,6 @@ done
 MAIN_CLASS=org.apache.iotdb.db.tools.TsFileResourcePrinter
 
 # Start up the service
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 
 exit $?
diff --git a/scripts/tools/tsfile/print-tsfile.sh 
b/scripts/tools/tsfile/print-tsfile.sh
index e3ad4d5fe6c..da1ba8d0688 100644
--- a/scripts/tools/tsfile/print-tsfile.sh
+++ b/scripts/tools/tsfile/print-tsfile.sh
@@ -41,6 +41,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -48,5 +50,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.TsFileSketchTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/settle-tsfile.sh 
b/scripts/tools/tsfile/settle-tsfile.sh
index 30713604687..0e8ba8f885e 100644
--- a/scripts/tools/tsfile/settle-tsfile.sh
+++ b/scripts/tools/tsfile/settle-tsfile.sh
@@ -37,6 +37,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -44,5 +46,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.settle.TsFileSettleByCompactionTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
diff --git a/scripts/tools/tsfile/split-tsfile-tool.sh 
b/scripts/tools/tsfile/split-tsfile-tool.sh
index f645f3c0fd6..9719041bab1 100644
--- a/scripts/tools/tsfile/split-tsfile-tool.sh
+++ b/scripts/tools/tsfile/split-tsfile-tool.sh
@@ -40,6 +40,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.TsFileSplitTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/validate-tsfile.sh 
b/scripts/tools/tsfile/validate-tsfile.sh
index aaa27cac72f..178cd9e1458 100644
--- a/scripts/tools/tsfile/validate-tsfile.sh
+++ b/scripts/tools/tsfile/validate-tsfile.sh
@@ -40,6 +40,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.tools.validate.TsFileValidationTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
diff --git a/scripts/tools/wal/print-wal.sh b/scripts/tools/wal/print-wal.sh
index 1aa396d4fd5..fd519939297 100644
--- a/scripts/tools/wal/print-wal.sh
+++ b/scripts/tools/wal/print-wal.sh
@@ -41,6 +41,8 @@ else
     JAVA=java
 fi
 
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
 CLASSPATH=""
 for f in ${IOTDB_HOME}/lib/*.jar; do
   CLASSPATH=${CLASSPATH}":"$f
@@ -48,5 +50,5 @@ done
 
 MAIN_CLASS=org.apache.iotdb.db.storageengine.dataregion.wal.utils.WALPrintTool
 
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
 exit $?
\ No newline at end of file
diff --git a/scripts/tools/windows/export-data.bat 
b/scripts/tools/windows/export-data.bat
index 69d9639b278..f239b09bb48 100644
--- a/scripts/tools/windows/export-data.bat
+++ b/scripts/tools/windows/export-data.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts we'll use in legacy run or installation
 set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM ***** CLASSPATH library setting *****
 set CLASSPATH=%CLASSPATH%;"%IOTDB_HOME%\lib\*"
diff --git a/scripts/tools/windows/export-tsfile.bat 
b/scripts/tools/windows/export-tsfile.bat
index e67114300e2..0b070b51fbc 100644
--- a/scripts/tools/windows/export-tsfile.bat
+++ b/scripts/tools/windows/export-tsfile.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts we'll use in legacy run or installation
 set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM ***** CLASSPATH library setting *****
 set CLASSPATH=%CLASSPATH%;"%IOTDB_HOME%\lib\*"
diff --git a/scripts/tools/windows/import-data.bat 
b/scripts/tools/windows/import-data.bat
index 6875d453faa..56518c78600 100644
--- a/scripts/tools/windows/import-data.bat
+++ b/scripts/tools/windows/import-data.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts we'll use in legacy run or installation
 set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM ***** CLASSPATH library setting *****
 set CLASSPATH=%CLASSPATH%;"%IOTDB_HOME%\lib\*"
diff --git a/scripts/tools/windows/ops/backup.bat 
b/scripts/tools/windows/ops/backup.bat
index 2a723a76fc8..f06c674895f 100644
--- a/scripts/tools/windows/ops/backup.bat
+++ b/scripts/tools/windows/ops/backup.bat
@@ -29,7 +29,7 @@ popd
 if NOT DEFINED JAVA_HOME goto :err
 
 set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 SET IOTDB_CONF=%IOTDB_HOME%\conf
 IF EXIST "%IOTDB_CONF%\windows\datanode-env.bat" (
diff --git a/scripts/tools/windows/schema/export-schema.bat 
b/scripts/tools/windows/schema/export-schema.bat
index 397d8ab9408..9a082ac05ff 100644
--- a/scripts/tools/windows/schema/export-schema.bat
+++ b/scripts/tools/windows/schema/export-schema.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts we'll use in legacy run or installation
 set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM ***** CLASSPATH library setting *****
 if EXIST "%IOTDB_HOME%\lib" (set CLASSPATH="%IOTDB_HOME%\lib\*") else set 
CLASSPATH="%IOTDB_HOME%\..\lib\*"
diff --git a/scripts/tools/windows/schema/import-schema.bat 
b/scripts/tools/windows/schema/import-schema.bat
index f01dd4e94c0..a4ddd93b6ff 100644
--- a/scripts/tools/windows/schema/import-schema.bat
+++ b/scripts/tools/windows/schema/import-schema.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts we'll use in legacy run or installation
 set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM ***** CLASSPATH library setting *****
 if EXIST "%IOTDB_HOME%\lib" (set CLASSPATH="%IOTDB_HOME%\lib\*") else set 
CLASSPATH="%IOTDB_HOME%\..\lib\*"
diff --git a/scripts/tools/windows/schema/print-pb-tree-file.bat 
b/scripts/tools/windows/schema/print-pb-tree-file.bat
index e4d8c42b7a9..302a9f3c8bb 100644
--- a/scripts/tools/windows/schema/print-pb-tree-file.bat
+++ b/scripts/tools/windows/schema/print-pb-tree-file.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/schema/print-schema-log.bat 
b/scripts/tools/windows/schema/print-schema-log.bat
index 52a83297cdc..8a39ec2d97c 100644
--- a/scripts/tools/windows/schema/print-schema-log.bat
+++ b/scripts/tools/windows/schema/print-schema-log.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git 
a/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat 
b/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
index eb7fe8f072e..a95667b63f4 100644
--- a/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
+++ b/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/tsfile/overlap-statistic-tool.bat 
b/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
index 3140c9f2184..4cdea11f370 100644
--- a/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
+++ b/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -Xmx16G -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -Xmx16G -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat 
b/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
index 8042b384a38..4a145838203 100644
--- a/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
+++ b/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" 
"-Dlogback.configurationFile=%IOTDB_HOME%\conf\logback-tool.xml" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" 
"-Dlogback.configurationFile=%IOTDB_HOME%\conf\logback-tool.xml" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat 
b/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
index 1fcf1908e25..ca96af24ce9 100644
--- a/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
+++ b/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
@@ -44,8 +44,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/tsfile/print-tsfile.bat 
b/scripts/tools/windows/tsfile/print-tsfile.bat
index bd7f0c8cf83..3be2ac1a0ff 100644
--- a/scripts/tools/windows/tsfile/print-tsfile.bat
+++ b/scripts/tools/windows/tsfile/print-tsfile.bat
@@ -35,7 +35,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts
 set JAVA_OPTS=-ea^
- -Dfile.encoding=UTF-8
+ -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM 
-----------------------------------------------------------------------------
 @REM ***** CLASSPATH library setting *****
diff --git a/scripts/tools/windows/tsfile/settle-tsfile.bat 
b/scripts/tools/windows/tsfile/settle-tsfile.bat
index 8fb4a8b6568..e7259821ae5 100644
--- a/scripts/tools/windows/tsfile/settle-tsfile.bat
+++ b/scripts/tools/windows/tsfile/settle-tsfile.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/tsfile/split-tsfile-tool.bat 
b/scripts/tools/windows/tsfile/split-tsfile-tool.bat
index 97b86b217b4..2ec48ee4f71 100644
--- a/scripts/tools/windows/tsfile/split-tsfile-tool.bat
+++ b/scripts/tools/windows/tsfile/split-tsfile-tool.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/tsfile/validate-tsfile.bat 
b/scripts/tools/windows/tsfile/validate-tsfile.bat
index 3ecd85f88fe..fd6440f1f92 100644
--- a/scripts/tools/windows/tsfile/validate-tsfile.bat
+++ b/scripts/tools/windows/tsfile/validate-tsfile.bat
@@ -45,8 +45,8 @@ goto :eof
 
 @REM 
-----------------------------------------------------------------------------
 :okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
 
 goto finally
 
diff --git a/scripts/tools/windows/wal/print-wal.bat 
b/scripts/tools/windows/wal/print-wal.bat
index a13c42827da..fd24fb426cf 100644
--- a/scripts/tools/windows/wal/print-wal.bat
+++ b/scripts/tools/windows/wal/print-wal.bat
@@ -35,7 +35,7 @@ if NOT DEFINED JAVA_HOME goto :err
 @REM 
-----------------------------------------------------------------------------
 @REM JVM Opts
 set JAVA_OPTS=-ea^
- -Dfile.encoding=UTF-8
+ -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
 
 @REM 
-----------------------------------------------------------------------------
 @REM ***** CLASSPATH library setting *****


Reply via email to