I'm curious if I'm doing something wrong related to SQLcl or it's a problem with the product itself, but it doesn't seem to properly resolve Windows system variables. For example:
SQL> host echo %SQLPATH%
C:\Oracle\sql
SQL> store set %SQLPATH%\x.sql replace
java.io.FileNotFoundException: %SQLPATH%\x.sql (The system cannot find the path specified)
at java.io.FileOutputStream.open0(Native Method)
...
at oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli.main(SqlCli.java:477)
Error: %SQLPATH%\x.sql (The system cannot find the path specified)
Wrote file %SQLPATH%\x.sql
SQL> host dir %SQLPATH%\x.sql
Volume in drive C is OSDisk
Volume Serial Number is 30C1-3448
Directory of C:\Oracle\sql
File Not Found
The same steps work fine using sqlplus from the Oracle client. I'm on Windows10 and running SQLcl 17.4.0.354.2224.
Dave