Am o problemă cu rsync-ul lui Cygwine. Cu un script Powershell, încerc să transfer directoare de pe un server Novell pe un server Windows
Calea pentru sursă este o variabilă care provine dintr-un fișier CSV
Funcția CopyRsync ([șir]$sursă,[șir]$dest){
$sourceRoot = "rădăcină@"+$sursă +"/"
$dest = "/cygdrive/g/Shares/" +$dest
cmd.exe /C "e:\cwRsync\bin\rsync.exe" -vrts --progress --tot-fișier --no-compress --no-checksum -e "/cygdrive/e/CWrsync/bin/ssh " $sourceRoot $dest --delete-before
}
$novel = 'server.domaine.local:/media/nss/rep01/Com/Com dir Soins info'
$dfs = „C:\temp\Rsync”
CopyRsync -source $novel -dest $dfs
Dacă calea sursă în variabilă nu conține un spațiu alb, scriptul rulează corect, dar dacă calea conține un spațiu alb, conținutul variabilei va fi analizat cu ghilimele și scriptul se va opri deoarece sesiunea SSH primește „root@. .. ca utilizator cu ghilimele la începutul rădăcinii utilizatorului ca acesta
„E:\cwRsync\bin\rsync.exe” -vrts --progress --tot-fișier --no-compress --no-checksum -e /cygdrive/e/CWrsync/bin/ssh „[email protected] .local:/media/nss/rep01/Com/Com dir Soins info/" /cygdrive/g/Shares/C:\temp\Rsync --delete-before
Cum pot analiza o variabilă pentru a ignora citatul din variabila de script?