Я экспериментирую с поиском данных из org-mode в своих скриптах оболочки и наткнулся на странность:
#+tblname: simple-table
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
#+name: work-with-simple-list-shell
#+begin_src shell :var tbl=simple-table
echo "$tbl"
#+end_src
#+RESULTS: work-with-simple-list-shell
: 1
#+name: work-with-simple-list-sh
#+begin_src sh :var tbl=simple-table
echo "$tbl"
#+end_src
#+RESULTS: work-with-simple-list-sh
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
Есть идеи, что происходит?
C-c C-v I
проверить, имеют ли оба блока src одинаковые заголовочные аргументы?Ответы:
Разница в том, какая оболочка вызывается для оценки вашего блока.
shell
вызывает то, что ваша оболочка по умолчанию в то время какsh
звонки/bin/sh
специально. Ваша оболочка по умолчанию, вероятно, bash, которая является расширением sh.echo $0
скажет вам, какой исполняемый файл работает в вашей оболочке:Любая оболочка
org-babel-shell-names
, установленная в вашей системе, будет работать.источник