cd
ist der Shell-Befehl zum Wechseln des Arbeitsverzeichnisses.
Wie kann ich das aktuelle Arbeitsverzeichnis in Python ändern?
cd
ist der Shell-Befehl zum Wechseln des Arbeitsverzeichnisses.
Wie kann ich das aktuelle Arbeitsverzeichnis in Python ändern?
Wie bereits von anderen bemerkt, ändern alle oben genannten Lösungen nur das Arbeitsverzeichnis des aktuellen Prozesses. Dieses geht verloren, wenn Sie zur Unix-Shell zurückkehren. Wenn Sie verzweifelt sind kann das übergeordnete Shell-Verzeichnis unter Unix mit diesem furchtbaren Hack ändern:
def quote_against_shell_expansion(s):
import pipes
return pipes.quote(s)
def put_text_back_into_terminal_input_buffer(text):
# use of this means that it only works in an interactive session
# (and if the user types while it runs they could insert characters between the characters in 'text'!)
import fcntl, termios
for c in text:
fcntl.ioctl(1, termios.TIOCSTI, c)
def change_parent_process_directory(dest):
# the horror
put_text_back_into_terminal_input_buffer("cd "+quote_against_shell_expansion(dest)+"\n")
Weiter in die von Brian aufgezeigte Richtung und basierend auf sh (1.0.8+)
from sh import cd, ls
cd('/tmp')
print ls()
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.