sh / bash : Pfade mit Leerzeichen

Status
Für weitere Antworten geschlossen.

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
Hallo user,

ich habe mich inzwischen "wirr" gelesen wie in scripten Leerzeichen zu behandeln sind.
Funktionieren tuts dennoch nicht.
Wie ist nun die Syntax aud DS209 mit DSM3.2 / ipkg-tools aktuell ?????

Beispiel :
#!/bin/bash
echo rsync '/volume1/tmp/rsync test/' 'nas3:/volume1/tmp/rsync test/' -r --progress --delete
rsync "/volume1/tmp/rsync test/" "nas3:/volume1/tmp/rsync test/" -r --progress --delete

Ist sicher trivial aber hat mch schon viel Zeit gekostet...

Grüße
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84
"" sind schon richtig. Aber die Optionen (- und --) müssen nach vorne.
 

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
Leider nein :
rsync -r --progress --delete "/volume1/tmp/rsync test/" "nas3:/volume1/tmp/rsync test/"

bringt das gleiche Ergebnis.

Liegt aber wohl nicht an der shell, da die Quelle richtig gewählt wird : "/volume1/tmp/rsync test/"
Als Ziel wird aber nach "nas3:/volume1/tmp/rsync" gespeichert !?!?
Zielserver ist eine ds107+ mit dsm 3.1 und den gleichen ipkg-Paketen wie der Quellserver.
Sicher kann ich die Pfade umbenennen, aber glücklich macht mich das nicht ...
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Schonmal das probiert?
Code:
rsync -r --progress --delete /volume1/tmp/rsync\ test/ nas3:/volume1/tmp/rsync\ test/
und bist du sicher, dass du unter /bin die Bash wirklich hast? Per default kennt die Firmware keine Bash
 

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
Hi jahlives,
probiert ja, geklappt nein.
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Funktioniert der rsync-Aufruf ohne Leerstellen im Dateinamen???

Itari
 

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
Stimmt. bash liegt unter /opt/bin
Script angepasst, keine Änderung
 

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
@itari : ja, ohne spaces klappts
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
und wenn du an die Stelle des Leerzeichens ein '?' setzt (ohne Hochkomma usw.) geht es dann auch?

Itari
 

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
@itari:
als Quelle geht "a b" ja, da brauchts kein "?"
auf dem Zielserver wird aus "a b" -> "a"

>Der Ziel-Trottel macht sogar ein mkdir "a?b", wenn das mal nicht weh tut (mir und dem Server :)
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Wie sieht es aus, wenn du das Zielverzeichnis (mit Leerstellen) vorher anlegst ??? Werden dann Unterverzeichnisse mit Leerstellen korrekt behandelt?

Itari
 

flugwaps

Benutzer
Mitglied seit
11. Feb 2009
Beiträge
168
Punkte für Reaktionen
3
Punkte
24
@ alle :
so gehts :
rsync -r "/volume1/tmp/rsync test" "nas3:/volume1/tmp/"

man beachte abschliessende "/"

Jetzt versuch ich mich noch an der passfile-option :)

Danke und schönen Tag noch !!
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat