Portál AbcLinuxu, 12. června 2025 07:02
#!/bin/bash CISLO=0 while true; do if [ ! -f "$1" ]; then echo "Contiguous backup of single file v1.0" echo "USAGE: cbackup <file>" exit 1 fi NEW=`md5sum "$1"` if [ "$OLD" != "$NEW" ]; then while [ -f "$1.$CISLO" ]; do CISLO=`echo $CISLO + 1 | bc` done echo Creating backup "$1.$CISLO" cp "$1" "$1.$CISLO" fi OLD=$NEW sleep 10 doneJa to používam keď pracujem s nejakou veľmi nestabilnou verziou nejakého programu. Unlimited undo je síce pekná vec, ale keď vám program padne tak je celé undo v péčku. Používa sa to tak že spustíte "cbackup nejakydokument" a veselo editujete ten dokument. Po každej dôležitej úprave to uložíte a o viac sa nestaráte. Ak nič nepadne tým lepšie a len treba vymazať tie zálohy. Nerobil som to cez inotify kvoli prenositeľnosti (WinXP,SCO 3.2,Ubuntu).
Tiskni
Sdílej:
A není lepší používat nějaký verzovací systém?
...keď pracujem s nejakou veľmi nestabilnou verziou nejakého programu...Není.
((CISLO++))
než tu obludu s bc. Počítat md5 každých 10 sekund je diskutabilní, já bych se klidně spolehl na čas změny souboru.
inotify
(příklas z manu):
#!/bin/sh while inotifywait -e modify /var/log/messages; do if tail -n1 /var/log/messages | grep httpd; then kdialog --msgbox "Apache needs love!" fi done
Mě přijde ten návrh k věci. Místo počítání MD5 si zavolaš inotifywait a ten běží dokud se soubor nezmění.
me to hlasi:
-bash: syntax error near unexpected token `newline'
neopisoval jsem to, pouzil jsme ctrl-c/ctrl-v
Pouzivam to podle navodu, jak pisete v blogu, ale ani jedna z moznosti nefunguje:
root@pocitac1:~# ./cbackup nejakydokument
Contiguous backup of single file v1.0
USAGE: cbackup <file>
root@pocitac1:~# cbackup <file>
-bash: syntax error near unexpected token `newline'
root@pocitac1:~#
Tohle nemuze myslet vazne.
Alespon odhalil, ze ma v PATH bashovy skript stejneho nazvu, ktery obsahuje syntaktickou chybu.
Jaaj dobre som sa zasmial
Ale aj tak osm nepochopil naco by mi mala tato finta sluzit:
Ak pracujem s nestabilonou aplikaciou a padne mi, tak som si to bud ulozil a zmeny mam v danom subore, alebo som si to neulozil a zmeny tam aj tak nemam... Nepotrebujem stotisic verzii v nejakom backup-e kvoli tomu ze subor casto ukladam kvoli testovaniu ci nemam syntakticku chybu a podobne...
Btw aky ma suvis pouzivanie nestabilnej aplikacie s ukladanim starych verzii suboru ?
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.