Ich habe meine Bash zu Bash Version 4.4.0 auf Mac OSX aktualisiert. Wie jedoch in this question erklärte, kann ich nicht die Bash-Version unter bin/bash
aktualisieren, aber nur eine parallele Shell unter /usr/local/bin/bash
Punkt Knitr zu Bash 4 auf Mac
installieren, wie kann ich diesen Schal Punkt knitr? engine.path
scheint ignoriert werden:
```{r, engine='bash', engine.path='/usr/local/bin/bash'}
which bash
```
/bin/bash
Update
@ Kevin gibt: ja du hast recht, echo $BASH
gibt /usr/local/bin/bash
ABER:
von knitr
```{bash, engine.path='/usr/local/bin/bash'}
which bash
echo $BASH
bash --version
```
gibt
/bin/bash
/usr/local/bin/bash
GNU bash, Version 3.2.57 (1) -freigabe (x86_64-apple-darwin15) Copyright (C) 2007 Free Software Foundation, Inc.
während das gleiche von der Kommandozeile gibt
bearbeiten 2
nach dem Re-Lektüre Antwort von @Kevin, dies funktioniert
```{r, engine = "bash", engine.path = "/usr/local/bin/bash"}
export PATH="/usr/local/bin:$PATH"
bash --version
```
GNU bash, Version 4.4.0 (1) -release (x86_64-Apfel-darwin15.6.0)
Wenn ich einen unvollständigen Pfad gebe, bekomme ich eine Fehlermeldung, die liest '' '/ bin/sh:/usr/local/bin /: ist ein Verzeichnis'''. Könnte es sein, dass Knitr eine Version von '' # #! Bin/sh''' verwendet hat, die sh, nicht bash aufruft?Und das ist ein Symlink zur System-Bash, wie in dieser Frage vorgeschlagen: http://StackOverflow.com/Questions/5725296/Difference-Wintersh-and-Bash? Unter el Capitan ist es jedoch nicht mehr (leicht) möglich, Links im 'rootless' Modus zu ändern (http://stackoverflow.com/questions/32659348/operation-not-permitted-when-on-root-el-capitan-rootless) -behindert) – Latrunculia