Получение разных путей на красном языке

Я пытаюсь найти разные пути на красном языке. Если я перехожу к /myfolder и запускаю следующую команду:

/myfolder$ /path/to/red.exe /path/to/myscript.red

Как я могу получить эти 3 пути из кода в скрипте?

Я попытался:

system/options/path        ; Gives path/to/myscript
system/script/path         ; Gives none
call/output "pwd" outstr   ; Gives path/to/myscript
what-dir                   ; Gives path/to/myscript

Я могу получить только один путь. Как я могу получить путь к red.exe и путь к текущему рабочему каталогу (на красном языке, а не в Rebol)?

Примечание: это связано с моим вопросом о Rebol в What -dir сообщает собственный каталог как текущий каталог в Rebol


person rnso    schedule 28.10.2017    source источник


Ответы (2)


В Rebol (2 и 3) вы можете получить эти три пути следующим образом:

system/options/boot    ;; /path/to/red.exe
system/options/path    ;; /myfolder
system/script/path     ;; /path/to/myscript.red

На данный момент только system/options/boot в красном соответствует тому, что делает здесь Rebol.

person draegtun    schedule 30.10.2017

Из консоли графического интерфейса:

boot             string!       {C:\ProgramData\Red\gui-console-2017-11-30-4300.exe}
home             none!         none
path             file!         %/C/ProgramData/Red/
script           none!         none
cache            file!         %/C/ProgramData/Red/

Из кли:

boot             string!       "C:\ProgramData\Red\console-2017-11-30-4430.
home             none!         none
path             file!         %/C/Users/Old%20Man/desktop/
script           none!         none
cache            file!         %/C/ProgramData/Red/

Использование консоли с графическим интерфейсом:

system/options/boot   ; Red binary
system/options/path   ; current dir
system/options/cache  ; Red default dir "home"

system/options/boot — это string!, поэтому вам придется преобразовать его с помощью:

to-red-file system/options/boot
person tgbfroat    schedule 02.12.2017