Ich habe dieses Shell-Skript, das ich verwenden, um mein System zu sichern. Es gibt eine Zeile:Syntaxfehler in Shell-Skript mit Prozesssubstitution
tar -Pzcpf /backups/backup.tar.gz --directory=/ --exclude=proc --exclude=sys --exclude=dev/pts --exclude=backups --exclude=var/log/2> >(grep -v 'socket ignored' >&2)
Wie Sie sehen können, habe ich die lästigen, nutzlos „socket ignoriert“ Fehler durch Teer, um herauszufiltern versucht, mit this blog post.
Was ich von Shell erhalten bei Ausführung ist:
/bin/sysback: Zeile 45: Syntaxfehler in der Nähe von unerwartetes Token
>' /bin/sysback: line 45:
tar -Pzcpf/backups/backup --directory =/ --exclude = proc --exclude = sys --exclude = dev/pts --exclude = Sicherungen --exclude = var/log/2>> (grep -v 'Buchse ignoriert'> & 2)‘
denke ich '2>> (' 'sollte 2> sein ('. –
Haben Sie nicht einen Syntaxfehler nach dieser Änderung geben, aber entweder die Ausgabe nicht herausfiltern. –
Die> (...) Prozesssubstitutionssyntax ist eine nicht standardmäßige Funktion, und Ihre Shell unterstützt sie anscheinend nicht. Verwenden Sie eine andere Shell oder vielleicht eine neuere Version von bash. –