Добрый день всем. Нужна помощь. Столкнулся с интересным скриптом, хочу понять как он работает, но man bash, гугл и ABS не помогли, допускаю что плохо искал.
В тексте скрипта непонятна конструкция #| |#. Текст скрипта следующий
#!/bin/sh
#|
exec racket -cu "$0" ${1+"$@"}
|#
#lang racket/base
(printf "This script started slowly, because the use of\n")
(printf "bytecode files has been disabled via -c.\n")
(printf "Given arguments: ~s\n"
(current-command-line-arguments))
Может быть кто-нибудь сталкивался с подобным, или хотя бы видел в документации.
Здесь используется особенность LISP и конструкция заключенная в #| |# это блок комментариев
#|
This is a block comment
|#
т.е. получается sh пропускает комментарий #|
а команда exec racket -cu "$0"
запускает скрипт на выполнение в racket , который пропускает блок комментариев #| exec racket -cu "$0" |#
to: lexa_linux
Спасибо за ответ. Вопрос был не в том что он выполняет (это я и так знаю), а как он работает.