Estoy experimentando con la obtención de datos del modo org en mis scripts de shell y me he encontrado con una rareza:
#+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 |
¿Alguna idea de lo que está pasando?
C-c C-v I
de verificar si ambos bloques src tienen los mismos argumentos de encabezado?Respuestas:
La diferencia es qué shell se llama para evaluar su bloque.
shell
llama cualquiera que sea su shell predeterminado mientras quesh
llama/bin/sh
específicamente. Su shell predeterminado es probablemente bash, que es una extensión de sh.echo $0
le dirá qué ejecutable está ejecutando su shell:Cualquiera de los shells
org-babel-shell-names
instalados en su sistema funcionará.fuente