Was ich suche ist diese Art der Interaktion Befehlszeile an der Linie Windows-Befehl:Wie ändere ich das Verzeichnis in der Befehlszeile mit Clojure?
C:\temp1>clj some_script.clj
C:\temp2>
Wo some_script.clj etwas wie enthält:
(cd "c:\\temp2")
Die Frage ist also - wie Ich implementiere die Funktion cd? Habe mit clojure.java.shell experimentiert, aber es sieht nicht so aus wie die lib, die ich brauche. Dies könnte eine einfache Frage sein, könnte das Problem sein, dass ich Java nicht fließend spreche ?!
'clj some_script.clj' wird in einem anderen Prozess ausgeführt, so dass das aktuelle Verzeichnis der Terminalsitzung nicht geändert werden kann. Sie können nicht tun, was Sie wollen, egal in welcher Sprache. – bfontaine
Sie könnten es jedoch mit einem Shell-Skript tun. Und ich bin sicher, dass es einen Weg geben muss, in den Elternprozess zu hacken und das aktuelle Verzeichnis irgendwie von einem anderen Prozess zu ändern, aber ich denke, es ist nicht einfach/praktisch. –
Sie könnten es tun, wenn Sie das Shell-Skript in der aktuellen Sitzung * laden *; nur das Ausführen des Skripts funktioniert nicht. – bfontaine