Script läuft auf Bash3 aber nicht auf Bash4

  • Thread starter Thread starter Deleted member 4401
  • Start date Start date
D

Deleted member 4401

Guest
Hallo allerseits....;)

Ich habe ein echt seltsames Problem, dieses kleine Script läuft auf Etch und Lenny (bash 3.x) einwandfrei:
Code:
#!/bin/bash

VAR=$(uname -r)
VER=${VAR:0:3}
echo "Detected kernel version "`uname -r`

if [ "$VER" == '2.6' ]; then
   echo "Trying 2.6"
fi

Auf Squeeze (bash 4.x) aber nicht! Fehlermeldung "Bad substitution" in Zeile 4. Sind in Version 4 etwa bestimmt Funktionen rausgeflogen? :confused:
 
Sind in Version 4 etwa bestimmt Funktionen rausgeflogen? :confused:
Code:
# VAR=$(uname -r); VER=${VAR:0:3}; echo -e "$VAR\n$VER\n$BASH_VERSION"
2.6.36-ARCH
2.6
4.1.9(2)-release
Im Zweifel hilft nur ein Blick in das Changelog deiner konkreten Bash-Version (und ggf. der folgenden Versionen für Bugfixes).
 
Des Rätsels Lösung:
Aus unerfindlichen Gründen war bash nach sh gelinkt :confused:
Link entfernt, jetzt läufts wie erwartet.:)
 
Back
Top