Beiträge von mostly_maxi

    Code
    done <<< $(get_asset_md5sums)

    Damit funktioniert zwar der Zugriff auf die Variable, aber der while loop schlägt trotzdem fehl, weil das Ergebnis von get_asset_md5sums nicht mehr pro Zeile eingelesen wird, sondern als ein String. Wenn ich mich länger damit befasse, bekomme ich den bestimmt in seine Einzelteile zerlegt und kann wieder damit arbeiten wie davor, aber dann kann ich auch gleich den ganzen while loop raus schmeißen. Das wollte ich eigentlich vermeiden wenn möglich, weil ich dafür wahrscheinlich ewig brauche (Wie gesagt, absolut kein Profi was Bash Skripte angeht)

    Hallo zusammen,

    ich wollte mir für mein aktuelles kleines Webprojekt auf Basis von diesem Artikel ein Bash Skript zusammen bauen, mit dem ich statischen Ressourcen einen hash verpassen kann, um langen Cache Zeiten entgegenzuwirken. Ich bin kein Profi was Bash Skripts angeht, aber ich bin auf meiner lokalen Maschine zu einem Ergebnis gekommen, mit dem ich absolut zufrieden bin. In den git Einstellungen im WCP habe ich zusätzliche Shell Befehle eingefügt um das Skript auszuführen, aber nach dem fetch des Repositories kam die Ernüchterung. Auf dem Server läuft das Skript in den Fehler.

    Code
    ./hash-static-resources.sh: line 38: /dev/fd/63: No such file or directory md5sum: write error

    Wenn ich das Skript versuche über SSH auszuführen kommt eine ähnliche Fehlermeldung

    Code
    ./hash-static-resources.sh: line 38: /dev/fd/63: No such file or directory
    bash-5.1$ find: 'md5sum' terminated by signal 13

    Ich hab inzwischen fast alles (mir mögliche) versucht um diesen Fehler zu lösen und bin zu dem Schluss gekommen, dass ich jetzt einfach mal hier nachfrage.

    /dev/fd ist auf dem Server nicht vorhanden, und ich schätze jetzt einfach mal, dass dadurch auch das Skript abraucht, wenn ich versuche process substitution in meinem Skript zu nutzen. Ist es in den Webhosting Verträgen schlichtweg einfach nicht möglich so "fortgeschrittene" Skripte auszuführen?

    Die process substitution loszuwerden ist (zumindest für mich) nicht möglich, weil ich in einem while loop Zugriff auf eine globale Variable brauche. Siehe dazu mein minimales Beispiel

    Ich sag schonmal Danke für alle Vorschläge im Voraus.

    Grüße

    Maxi