(11 Antworten)
Vor 3 Jahren geschlossen.
Ich habe ein sehr einfaches Skript erstellt
#!/bin/bash
mkdir $1 && cd $1
wenn ich ausführe
myscript test
Es erstellt ein Testverzeichnis, geht aber nicht gleich danach hinein. Ich verstehe nicht warum, auf meinem Fedora 27 funktioniert dieses Skript ohne Probleme, aber auf meinem Debian-Stretch tritt dieses Verhalten auf. Könnte jemand erklären, warum ich diesen Fehler habe.
Akzeptierte Antwort:
Sie können und es funktioniert perfekt. Aber wenn das Skript fertig ist, wird seine Umgebung (einschließlich seiner Arbeitsverzeichnis) wird zerstört.
Probieren Sie source myscript test
aus um Ihr Skript so auszuführen, als ob Sie seine Befehle in Ihre tatsächliche interaktive Shell eingegeben hätten, und Ihr Arbeitsverzeichnis wurde geändert.