Drush zeigt Fehler: Unterstützen Sie bash, um 'source' zu unterstützen, mit Rückgriff auf $0, falls dies nicht mit bash ausgeführt wird.
Ich habe eine große Anzahl von Konfigurationen und führe normalerweise den Config-Import mit php -d memory_limit=-1 aus (um das PHP-Speicherlimit zu deaktivieren):
php -d memory_limit=-1 ./vendor/bin/drush config-import -y
Aber dieses Mal erhielt ich einen Fehler:
 
# Unterstützt bash, um 'source' zu ermöglichen, mit Rückgriff auf $0, falls dies nicht mit bash ausgeführt wird
# https://stackoverflow.com/a/35006505/6512
selfArg="$BASH_SOURCE"
if [ -z "$selfArg" ]; then
    selfArg="$0"
fi
self=$(realpath $selfArg 2> /dev/null)
if [ -z "$self" ]; then
    self="$selfArg"
fi
dir=$(cd "${self%[/\\]*}" > /dev/null; cd ../drush/drush && pwd)
if [ -d /proc/cygdrive ]; then
    case $(which php) in
        $(readlink -n /proc/cygdrive)/*)
            # Wir sind in Cygwin und verwenden Windows-PHP, daher muss der Pfad übersetzt werden
            dir=$(cygpath -m "$dir");
            ;;
    esac
fi
export COMPOSER_RUNTIME_BIN_DIR="$(cd "${self%[/\\]*}" > /dev/null; pwd)"
# Wenn bash diese Datei sourced, müssen wir auch das Ziel sourcen
bashSource="$BASH_SOURCE"
if [ -n "$bashSource" ]; then
    if [ "$bashSource" != "$0" ]; then
        source "${dir}/drush" "$@"
        return
    fi
fi
"${dir}/drush" "$@"
Sie können diesen Fehler vermeiden, wenn Sie memory_limit=-1 als php-options übergeben:
./vendor/bin/drush --php-options='-d memory_limit=-1' config-import -y
Warum php -d memory_limit=-1 vendor/bin/drush … jetzt fehlschlägt
Wenn Sie die Datei direkt durch php ausführen, weisen Sie den PHP-Interpreter an, ein Bash-Skript zu parsen:
php -d memory_limit=-1 ./vendor/bin/drush status
PHP versucht dann, die erste Nicht-PHP-Zeile (# Unterstützt bash …) auszuführen, und bricht sofort ab, wobei der Quelltext des Wrappers ausgegeben wird. Genau das ist die Ausgabe, die Sie gesehen haben. Die Änderung wurde in Drush 13.3 eingeführt und im Upstream-Issue „Running drush as php script fails after updating from 13.2.0“ diskutiert.