2012-08-26 9 views
5

Si consideri il seguente frammento di perl in org-babel, che utilizza <STDIN>.Come reindirizzare l'input a un src_block come stdin?

** Ans 2 
    #+begin_src perl :results output 
    use Math::Trig; 
    $rad = <STDIN>; 
    $circumference = 2*pi*$rad; 
    print "Circumference of circle is $circumference"; 
    #+end_src 

È possibile reindirizzare l'ingresso a questo blocco da un altro blocco?

Di ':

#+begin_src text :name test-input 
    12.5 
#+end_src 

risposta

3

È possibile passare $rad direttamente allo script Perl da un blocco #+results: vedi passing arguments to code blocks nel manuale.

che darebbe

#+begin_src perl :results output :var rad=test-input 

Utilizzando come input

#+results: test-input 
: 12.5 
+0

Questo mi sembra esattamente la risposta. Non sono sicuro del perché tu dici "Non penso". – Dodgie

+0

Hai ragione, ho adattato la risposta. (Originariamente era perché usavamo un blocco 'results', e non un' begin_src text' - vedi la sua domanda prima della modifica.) –

+0

Ah, okay. Freddo. – Dodgie

Problemi correlati