![]() |
Bash Skript mit SVN Befehlen
Hey Leute ich benötigt eure Hilfe.
Ich habe mich vor einigen Tag mal ein wenig mit Bash-Skripten beschäftigt. Ich würde gerne einige Befehle von SVN in ein Skript einarbeiten. Ich bekomme aber immer irengwelche Fehler und habe so überhaupt keine Ansatzpunkt für das eigentliche Problem (gut ja demnach sitzt das eigentliche Problem vor der Tastertur - sonst würde ich ja auch nicht fragen ;-) ) Ich kann ja mal was ganz billiges posten^^ Code:
#!/bin/bash Was habe ich falsch gemacht? |
Funktioniert es ohne Skript? Denn eigentlich hat SVN ein Problem damit, den Pfad aufzulösen. So etwas kann z.B. bei symbolischen Links auftreten. Gib doch einfach mal in deine Bash "svn info d:/development/workspace/Test" ein. Wenn da der gleiche Fehler kommt, dann hast du eben ein Problem mit dem Pfad und SVN aber nicht mit dem Skript.
|
Wenn ich den Aufruf direkt in die Bash eingebe führt er den Befehl aus. Es kommt kein Fehler.
Hat das was mit den "/" bzw. "\" zu tun? In der Error-Aufschrift ist ja ein "\" zu sehen. Wenn ich svn info d:\...\Test aufrufe kommt auch ein Fehler: svn '.' is not a working copy. |
"\" dient in der bash als Escape-Sequenz. "d:\...\Test" wird daher wahrscheinlich als "d:..est" gelesen.
Schreib mal in dein Skript und in deine Shell "pwd" rein, damit gibt er das aktuelle Verzeichnis aus. Was gibt er aus? Ich glaube fast (da du ja Windows hast), dass du für die SVN Befehle eine eigene Shell hast und mit "#!/bin/bash" einfach die falsche Shelle verwendest (die keine Windows Festplattenstrukturen unterstützt). |
Ok also wenn ich in die Bash "pwd eingeben kommt da das aktuelle Verzeichnis raus.
/d/workspace/ Wenn ich das ins Skript eintrage: Code:
#!/bin/bash ./info.sh: line 4: $'pwd\r': command not found Bei dieser Version des Skriptes: Code:
#!/bin/bash - das shellskript befindet sich in dem gleichen Verzeichnis wie "Test". Fehlermeldung: «vn: Fehler beim Ermitteln der Groß-/Kleinschreibung von »Test |
"pwd" gehört ohne Anführungszeichen in das Skript ... die hab ich nur der Übersichtlichkeit (zur Abgrenzung als Befehl) gemacht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:15 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.