![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| pause () problemer | IdleProc | UNIX for Dummies Spørsmål og svar | 1 | 03-17-2009 06:21 |
| Pause på svar fra loggfilen | gxdanh | Shell programmering og Skripting | 3 | 10-24-2008 12:52 |
| Rsync skript i cron fra stepping på seg selv | sunsysadm2003 | Shell programmering og Skripting | 3 | 04-30-2008 12:14 |
| pause? der art thou? | 01000101 | High Level Programmering | 3 | 05-15-2006 08:42 |
| hvordan du pause en annen prosess? | daneensign | UNIX for Dummies Spørsmål og svar | 1 | 02-14-2006 12:27 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Script Pause Inntil Rsync Is Done Overføring
Alright, jeg har denne skript som henter filer fra noen få steder, behandle disse filene, skaper en zip-fil, er rsync den og deretter fjerner alt.
Problemet som jeg har er at jeg ikke vet hvor stor rsync'ed zip-filen skal være. Akkurat nå er jeg ved hjelp av en søvn kommando før jeg fjerne alle filer og kataloger opprettet, men jeg er ukomfortabel i å forlate det på denne måten. Alt det ville ta ville være en stor fil som det er behov for å rsync og scriptet vil slette filen før det er gjort overføres. Så er det en måte å ha skriptet sjekke fremgangen av rsync? Hvis ikke, hvordan vil jeg gå om å gjøre noe langs disse linjene? |
|
|||||
|
Hvis dette er en Bash shell script du kan prøve på "vent" kommandoen.
Se mer her -- Job Control Commands Håper dette hjelper. |
|
||||
|
Sitat:
Code:
rsync -urza -e "ssh -i rsync-key -l username -p xxxx" /filepath/filename.zip webserv:/filepath/ wait Som for låsefil, jeg er ikke sikker på hva dette skriptet gjør, akkurat. Code:
lockDir="/root/lock_files" lockFilePath="$lockDir/file.lock" while [ -e "$lockFilePath" ] do exit done touch $lockFilePath /usr/bin/rsync --stats -e ssh -rlvtgoDz --delete /dir/dir/dir/ root@server:/dir/dir/dir/ & rm -f $lockFilePath Jeg kunne se dette noe å arbeide hvis du gjort skriptet kaller seg selv før mens utsagn, men jeg vet ikke hvordan dette ville forbedre situasjonen. Normalt mitt script deretter fjerner filene som blir rsync'ed, så selv om jeg kalte dette skriptet eksternt, ville rm kommandoen gå gjennom så snart dette skriptet er ferdig, a la akkurat som rsync starter. Og jeg trenger ikke å rsync flere filer, bare ett. Eventuelle andre ideer / forslag? (Takk for det jeg har så langt, forresten. )EDIT: Også, jeg kjører alt dette på en Red Hat-system. Husk å inkludere det tidligere. |
|
||||
|
Hvis jeg forstår dette riktig, er du på utkikk etter en måte å kontrollere at rsync er ferdig før du går videre til resten av skriptet. bash ville tillate deg å gjøre dette med '& &' operatør (i dette tilfellet rsync er Command1):
Code:
command1 && command2 Så, noe du kanskje kan bruke ville være: Code:
rsync -options file.xx remotehost:/path/to/store && rm file.xx |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|