ubuntuusers.de

sh: syntax error: bad fd number

Status: Gelöst | Ubuntu-Version: Ubuntu 8.04 (Hardy Heron)
Antworten |

autrobruno

Avatar von autrobruno

Anmeldungsdatum:
25. Dezember 2009

Beiträge: Zähle...

Ich verwende für die Installation einer wissenschaftlichen Software ein Perl-Skript, das die C-Shell erfordert. Folgende Fehlermeldung zeigt sich, obwohl die Login-Shell des Users auf die C-Shell gesetzt ist: sh: Syntax error: Bad fd number

bedeutet das, ich muss auch den Link sh unter /bin auf die C-Shell setzten, obwohl die Login-Shell eine C-Shell ist?

Vielen Danke + LG und Merry Christmas, Bruno

rUMPel

Anmeldungsdatum:
23. Dezember 2006

Beiträge: 189

Hallo,

wie zusehen ist...

1
2
$: ls -l /bin/sh
lrwxrwxrwx 1 root root 4 2009-05-22 18:40 /bin/sh -> dash

...ist die sh-shell auf die dash-shell gelinkt... könnte was bringen, wenn Du /bin/sh auf /bin/bash verlinkst

1
ln -sf /bin/bash /bin/sh

oder Du änderst in Deinem Script die Shebang-Line von

1
#!/bin/sh

in

1
#!/bin/bash

autrobruno

(Themenstarter)
Avatar von autrobruno

Anmeldungsdatum:
25. Dezember 2009

Beiträge: 2

Vielen Dank - hat funktioniert! Noch eine Verständnisfrage: Wieso geht der SymLink auf die Bash und jener auf die Dash nicht, obwohl das Skript die C-Shell fordert? Ist für mich verwirrend ...

Lunar

Anmeldungsdatum:
17. März 2006

Beiträge: 5792

Ein Teil des Skripts verlangt offenbar eine Bash. Vielleicht hast Du auch die Dokumentation missverstanden. In jedem Fall solltest Du den Entwicklern dieses Programms einen Hinweis zukommen lassen. Es ist ein Bug, wenn der Shebang auf /bin/sh zeigt, aber Bash-Code im Skript enthalten ist.

Antworten |