Skip to content

Commit 080a810

Browse files
authored
Modify script to use local environment variable changes and avoid pol… (apache#16541)
* Modify script to use local environment variable changes and avoid polluting global environment * fix start-cli-table.bat * fix start-cli-table.bat
1 parent 4510242 commit 080a810

File tree

2 files changed

+50
-39
lines changed

2 files changed

+50
-39
lines changed

scripts/sbin/windows/start-cli-table.bat

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@
2121
@echo off
2222

2323
REM -------------------------------
24-
REM Default SQL dialect
25-
if "%DEFAULT_SQL_DIALECT%"=="" set DEFAULT_SQL_DIALECT=table
26-
2724
REM Path to start-cli.bat script (adjust if needed)
2825
set CLI_SCRIPT=%~dp0start-cli.bat
2926

@@ -35,5 +32,17 @@ if not exist "%CLI_SCRIPT%" (
3532
)
3633

3734
REM Execute main script with:
38-
REM Pass all arguments through
39-
"%CLI_SCRIPT%" %*
35+
REM Pass all arguments through and add -sql_dialect table if not already specified
36+
setlocal
37+
set ARGS=%*
38+
if "%ARGS%"=="" (
39+
"%CLI_SCRIPT%" -sql_dialect table
40+
) else (
41+
echo %ARGS% | find /i "-sql_dialect " >nul
42+
if errorlevel 1 (
43+
"%CLI_SCRIPT%" -sql_dialect table %*
44+
) else (
45+
"%CLI_SCRIPT%" %*
46+
)
47+
)
48+
endlocal

scripts/sbin/windows/start-cli.bat

Lines changed: 36 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -18,23 +18,28 @@ REM specific language governing permissions and limitations
1818
REM under the License.
1919
REM
2020

21+
REM ==========================================================
22+
REM Apache IoTDB CLI Launcher
23+
REM ==========================================================
24+
25+
setlocal enabledelayedexpansion
26+
2127
REM -------------------------------
2228
REM Default SQL dialect
23-
if "%DEFAULT_SQL_DIALECT%"=="" set DEFAULT_SQL_DIALECT=tree
29+
if "%DEFAULT_SQL_DIALECT%"=="" set "DEFAULT_SQL_DIALECT=tree"
2430

2531
REM Default connection parameters
26-
set user_param=-u root
27-
set passwd_param=-pw root
28-
set host_param=-h 127.0.0.1
29-
set port_param=-p 6667
30-
set sql_dialect_param=-sql_dialect %DEFAULT_SQL_DIALECT%
31-
set PARAMETERS=
32+
set "user_param=-u root"
33+
set "passwd_param=-pw root"
34+
set "host_param=-h 127.0.0.1"
35+
set "port_param=-p 6667"
36+
set "sql_dialect_param=-sql_dialect %DEFAULT_SQL_DIALECT%"
37+
set "PARAMETERS="
3238

3339
REM -------------------------------
34-
REM Normalize script path to ensure %~dp0 resolves correctly
35-
REM Using pushd/popd with %CD% is more reliable than %~dp0 alone
40+
REM Normalize script path
3641
pushd "%~dp0" >nul 2>&1
37-
set SCRIPT_DIR=%CD%
42+
set "SCRIPT_DIR=%CD%"
3843
popd >nul 2>&1
3944

4045
REM -------------------------------
@@ -49,78 +54,75 @@ REM Parse command-line arguments
4954
if "%~1"=="" goto after_parse
5055

5156
if /I "%~1"=="-u" (
52-
set user_param=-u %~2
57+
set "user_param=-u %~2"
5358
shift
5459
shift
5560
goto parse_args
5661
)
5762
if /I "%~1"=="-pw" (
5863
if "%~2"=="" (
59-
set passwd_param=-pw
64+
set "passwd_param=-pw"
6065
shift
6166
) else (
62-
set passwd_param=-pw %~2
67+
set "passwd_param=-pw %~2"
6368
shift
6469
shift
6570
)
6671
goto parse_args
6772
)
6873
if /I "%~1"=="-h" (
69-
set host_param=-h %~2
74+
set "host_param=-h %~2"
7075
shift
7176
shift
7277
goto parse_args
7378
)
7479
if /I "%~1"=="-p" (
75-
set port_param=-p %~2
80+
set "port_param=-p %~2"
7681
shift
7782
shift
7883
goto parse_args
7984
)
8085
if /I "%~1"=="-sql_dialect" (
81-
set sql_dialect_param=-sql_dialect %~2
86+
set "sql_dialect_param=-sql_dialect %~2"
8287
shift
8388
shift
8489
goto parse_args
8590
)
8691

87-
REM Any other arguments
88-
set PARAMETERS=%PARAMETERS% %~1
92+
set "PARAMETERS=%PARAMETERS% %~1"
8993
shift
9094
goto parse_args
9195

9296
:after_parse
93-
9497
REM Combine all parameters
95-
set PARAMETERS=%host_param% %port_param% %user_param% %passwd_param% %sql_dialect_param% %PARAMETERS%
96-
98+
set "PARAMETERS=%host_param% %port_param% %user_param% %passwd_param% %sql_dialect_param% %PARAMETERS%"
9799

98100
REM CLI configuration
99-
set IOTDB_CLI_CONF=%IOTDB_HOME%\conf
100-
set MAIN_CLASS=org.apache.iotdb.cli.Cli
101+
set "IOTDB_CLI_CONF=%IOTDB_HOME%\conf"
102+
set "MAIN_CLASS=org.apache.iotdb.cli.Cli"
101103

102-
REM -------------------------------
103104
REM CLASSPATH setup
104-
set CLASSPATH=%IOTDB_HOME%\lib\*
105+
set "CLASSPATH=%IOTDB_HOME%\lib\*"
105106

106-
REM -------------------------------
107107
REM JAVA executable
108108
if defined JAVA_HOME (
109109
if exist "%JAVA_HOME%\bin\java.exe" (
110-
set JAVA=%JAVA_HOME%\bin\java.exe
110+
set "JAVA=%JAVA_HOME%\bin\java.exe"
111111
) else (
112-
set JAVA=java
112+
set "JAVA=java"
113113
)
114114
) else (
115-
set JAVA=java
115+
set "JAVA=java"
116116
)
117117

118-
REM -------------------------------
119118
REM JVM options
120-
set IOTDB_CLI_PARAMS=-Dlogback.configurationFile=%IOTDB_CLI_CONF%\logback-cli.xml
121-
set JVM_OPTS=-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8 --add-opens=java.base/java.lang=ALL-UNNAMED
119+
set "IOTDB_CLI_PARAMS=-Dlogback.configurationFile=%IOTDB_CLI_CONF%\logback-cli.xml"
120+
set "JVM_OPTS=-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8 --add-opens=java.base/java.lang=ALL-UNNAMED"
122121

123-
REM -------------------------------
124122
REM Run CLI
125123
"%JAVA%" %JVM_OPTS% %IOTDB_CLI_PARAMS% -cp "%CLASSPATH%" %MAIN_CLASS% %PARAMETERS%
126-
exit /b %ERRORLEVEL%
124+
125+
REM -------------------------------
126+
endlocal
127+
128+
exit /b %ERRORLEVEL%

0 commit comments

Comments
 (0)