Sziasztok olyan kérdésem lenne Suse 11, hogy a következő script-ben ha ki echo-zom a tar után a $? értékét akkor 1-et kapok és nem 0-át, ami ha jól tudom valamilyen hibára utal.
Tudna valaki segíteni abban hogy mi lehet a scriptben a hiba?
#!/bin/sh
Backup_Dir="/home/haby/backup/"
Filesystems="/home/haby/ /root/"
Filename=GwSave-$(date +%y-%m-%d).tar.gz
Curdir=$(Backup_Dir)$(date +%y-%m-%d)
mkdir $Backup_Dir$Curdir
tar cvpzf $Backup_Dir$Filename $Filesystems
echo "Exit status: $?, a mentés sikeresen megtörtént. $(date +%y-%m-%d--%H:%M)" >> $Backup_Dir$Curdir/log
mv $Backup_Dir$Filename $Backup_Dir$Curdir
echo "Exit status: $?, az Átmozgatás sikeresen megtörtént. $(date +%y-%m-%d--%H:%M)" >> $Backup_Dir$Curdir/log
De egyébként jónak tűnik a mentés.
- 965 megtekintés
Hozzászólások
* Ha sima utvonalat adsz meg valtozoban, nem kell idezojelbe tenni.
* A valtozo neve legyen csupa kisbetu, igy nagyon idetlenul nez ki, es semmi konvenciot nem kovet.
* Kotve hiszem, hogy a tar tobb argumentumot is lekezel. Szerintem azert kapod az errort, mert igy a masodik konyvtarral (/root/) nem tud mit kezdeni. Szedd szet a 'Filesystems' valtozot, vagy add meg egy file-ban a betomoritendo konyvtarneveket (man tar).
* A datumo(ka)t az elejen allitsd be valtozoban (export cur_date=$(date +%y-%m-%d) # vagy hasonlo)
* stb
- A hozzászóláshoz be kell jelentkezni
Kotve hiszem, hogy a tar tobb argumentumot is lekezel. Szerintem azert kapod az errort, mert igy a masodik konyvtarral (/root/) nem tud mit kezdeni.
Nekem mukdik argumentumkent tobb konyvtarra is.
Talan itt lehet a baj:
tar cvpzf $Backup_Dir$Filename $Filesystems
hianyzik a "-" a cvpzf parameterek elol.
Probald meg igy: tar -cvpzf $Backup_Dir$Filename $Filesystems
_______________________________________________________
UBUNTU 8.04 Rock's!
Type cat /vmlinuz > /dev/audio to hear the Voice of God.
- A hozzászóláshoz be kell jelentkezni
Osztom ezt a velemenyt ami tobb konyvtar megadasarol szol viszont a "-" nelkul is mukodik most neztem meg(ugyan azt a vegeredemenyt adja) ;)
- A hozzászóláshoz be kell jelentkezni
tar-nak osidok ota opcionalis a minusz. A tobb konyvtarban nem voltam teljesen biztos en sem.
- A hozzászóláshoz be kell jelentkezni
ITT http://hup.hu/node/31377#comment-596606 a kollega hasonloval kuzd ;) probaljatok meg kozosen kihozni valamit ;)
- A hozzászóláshoz be kell jelentkezni
Apró(nak tűnő) hiba: A változókat ${valtozo} alakban tessék írni, illetve az olvashatóság érdeklben célszerű a változók értékének a végéről lehagyni a "/"-t, és a ${ide}/${ezt}_${idobelyeggel}.tgz formát használni.
Azt már nem is mondom, hogy a mentés sikerét én egy "tar tzf foo.tgz" sikeres lefutása után mondanám ki, és annak a visszatérési értékére vizsgálva csinálnék egy elágazást.
A Curdir=$(Backup_Dir)$(date +%y-%m-%d) sem jó, merthogy így a "Backup_Dir"-t futtatná, és annak a kimenetét tenné a Curdir elejére, márpedig te pont nem ezt szeretnéd, hanem a ${Backup_Dir} változó értékéhez szeretnéd hozzácsapni az időbélyeget.
- A hozzászóláshoz be kell jelentkezni
a tar tzf visszatérési értékére hogyan kell elágazást készíteni itt is simán a $?-el?
- A hozzászóláshoz be kell jelentkezni
RTM: K&P UNIX könyv, egyébként meg man test, foo && bar illetve foo || bar, és hasonlók...
- A hozzászóláshoz be kell jelentkezni
Valszeg van egy korábbi hiba (például olvashatatlan fájl), amit ki is ír a tar, de azért továbbmegy, csak az idióta verbose mód miatt nem tűnik fel neked.
- A hozzászóláshoz be kell jelentkezni
Köszi, igen az volt a hiba hogy nem tudott 1 fájlt másolni, ezért dobta a hibát.
Köszönöm mindenkinek a segítséget.
- A hozzászóláshoz be kell jelentkezni