![]() |
|
|
google unix.com
|
|||||||
| Forums | Registreer | Forum Regels | Links | Albums | Veelgestelde vragen | Ledenlijst | Kalender | Zoeken | Today's Posts | Markeer forums als gelezen |
| Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier. |
Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
|
||||
| Draad | Thread Starter | Forum | Antwoorden | Last Post |
| sed - zoeken naar string en opslaan in variabele | melias | Programmeren en Shell Scripting | 4 | 04-12-2008 03:57 PM |
| Probleem bij het opslaan van SQL-query waarde in een variabele | krishna_gnv | Programmeren en Shell Scripting | 1 | 02-28-2008 07:37 |
| Opslag van de output in een variabele | Ravi raj kumar | UNIX voor Dummies Questions & Answers | 7 | 12-11-2006 09:14 |
| de opslag van de output van awk op variabele | mab_arif16 | Programmeren en Shell Scripting | 3 | 05-07-2006 07:15 PM |
| Opslag van waarden in een variabele | matrixmadhan | Programmeren en Shell Scripting | 1 | 04-01-2005 02:56 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Opslaan van een variabele?
Ik schrijf een bash shell script om een backup te maken meerdere MySQL databases. Dit script zal worden uitgevoerd op een dagelijkse basis en stuur een kopie naar een externe FTP-repository. De bestandsnamen zijn in het formaat DATE.backup.sql. Hoe sla ik de DATE variabele dus ik kan verwijderen / verplaatsen / etc het bestand op de FTP-server de volgende keer dat het script draait?
Code:
#!/bin/bash DATE=$(date +%d%b%y_%k.%M.%S) cd /web/.hhome/mysql.backup/data mysqldump -ubackup -ppassword --databases db1 db3 > $DATE.backup.sql gzip -9 $DATE.backup.sql crypt key < $DATE.backup.sql.gz > $DATE.backup.sql.enc.gz rm -rf $DATE.backup.sql.gz ftp -inv ftp.somehost.com<<ENDFTP user hoover90 password put $DATE.backup.sql.enc.gz bye ENDFTP Bedankt! Laatst gewijzigd door hoover90; op 01.26.2008 07:19 PM.. |
|
||||
|
Op de top van het script:
lees LASTDATE <. last_date Tijdens de FTP-sessie: del $ LASTDATE.backup.sql.enc.gz Na de FTP-sessie: echo $ date>. last_date Natuurlijk moet je een aantal voorwaardelijke logica er te behandelen. Last_date geen bestaande ... U kunt de eerste. last_date bestand handmatig jezelf. Als u hulp nodig hebt met die en laat het ons weten. |
|
||||
|
Oke, alles wat u voorgestelde werken, behalve voor het schrijven van $ date is. Last_date. Van bash kan ik gebruik maken van dezelfde commando formaat (ter vervanging van $ datum, met $ (date +% d% b%% y_ k.% M.% S), of gewoon echo "asdfqwer1234blahblah">. Last_date), maar het zal niet schrijf $ date is. last_date wanneer het script wordt uitgevoerd.
Code:
#!/bin/bash read LASTDATE < .last_date DATE=$(date +%d%b%y_%k.%M.%S) cd /web/.hhome/mysql.backup/data mysqldump -ubackup -ppassword --databases db1 db2 db3 > $DATE.backup.sql gzip -9 $DATE.backup.sql crypt asdfqwer1234 < $DATE.backup.sql.gz > $DATE.backup.sql.enc.gz rm -rf $DATE.backup.sql.gz ftp -inv ftp.somehost.com<<ENDFTP user hoover90 password del $LASTDATE.backup.sql.enc.gz put $DATE.backup.sql.enc.gz bye ENDFTP echo $DATE > .last_date |
|
||||
|
Dat is omdat je leest het. Last_date van uw huidige werk-directory, dan veranderen naar / web / .hhome / mysql.backup / data voor het schrijven van de variabele.
I'm guessing als je controleren / web / .hhome / mysql.backup / data / .last_date zal zijn. Ik verplaats de "lees LASTDATE <. Last_date" na de cd / web / .hhome / mysql.backup / data. |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|