Portál AbcLinuxu, 30. dubna 2025 15:26

Bash script na aktualizaci souboru

24.11.2009 22:29 | Přečteno: 1018× | linux | poslední úprava: 24.11.2009 22:29

Po přechodu mého bratra z win na ubuntu potřeboval rozchodit nějaké programy, které má z dob DOSu. Jmenovitě FOXPRO 2. S tím problém nebyl, ale jelikož mu foxpor šahá pro různé aktuální soubory na síť, bylo nutné toto vyřešit. Stanice kam si šahá jedou na win a problém byl, že DOSEMU nechce spolupracovat se smbfs, ale jen s nfs a nikde jsem nenašel jakým způsobem by šlo exportovat z NFS na SMBFS

Každopádně jsme to vyřešili pomocí rsync a cronu a následného scriptu, asi to bude prasárna, ale funguje to.

#!/bin/sh

PINGADDR=192.168.0.101
PINGCOUNT=2
SLEEPTIME=1
hodina=`date +%k`
den=`date +%w`

while [ 1 ]
do
  if [ $den -eq 0 ] || [ $den -eq 6 ] || [ $hodina -ge 17 ]; then
    exit 0
  else
    STATE_IP=`ping -c $PINGCOUNT $PINGADDR|grep transmitted|awk '{print $4}'`
    if [ $STATE_IP -ne 0 ]; then
      echo "ip je dostupna"
      
      sync=`rsync -a /co /kam`
    fi
    sleep $SLEEPTIME
  fi
done

Funguje to asi tak, že pokud je sobota, neděle nebo je více jak 17 hodin včetně, tak to neudělá nic. V cronu script spouštím každý den v osm hodin. Tedy pokud splní všechny podmínky, synchronizuje složky ze stanice na notes a má aktuální soubory každých 10 min.

Pokud má někdo nějaký tip, jak to zlepšít, nebudu se zlobit

Část scriptu převzata odtud

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

24.11.2009 22:34 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
Odpovědět | Sbalit | Link | Blokovat | Admin
A co takhle použít dosbox? Nevím, co dělá dosemu, že "nespolupracuje se smbfs", ale dosbox připojuje adresáře hostitele - do kterých může být připojený síťový fs - jako diskové jednotky v emulátoru. Ušetříš si tuhle pakárnu.

(Teda pokud to foxpro nesahá na síť přímo.)
Quando omni flunkus moritati
24.11.2009 22:42 maniakum | skóre: 20 | blog: medved
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
tam byl problém s rychlostí celého foxpro, bylo to celé zpomalené i po nastavení CPU a dalších blbostí to nejelo úplně tak jak by si představoval... Neměl jsem ani chuť si s tím nějak moc hrát a dosemu běželo hned a krásně včetně tisků.
Toto APT má schopnosti svaté krávy.
24.11.2009 22:37 R
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
Odpovědět | Sbalit | Link | Blokovat | Admin
Co znamena, ze DOSEMU nechce spolupracovat so smbfs? On s nim nema nijako spolupracovat. Cez smbfs (teraz radsej cifs) sa share zo servera namontuje do adresara a tym to konci. DOSEMU k tomu pristupuje uplne rovnako ako ku kazdemu inemu adresaru. Prave som to vyskusal a funguje to.
24.11.2009 22:40 neaktivni | skóre: 24 | blog: neaktivni
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
tak tak
24.11.2009 22:44 maniakum | skóre: 20 | blog: medved
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
nemyslím si, psalo to chybu takovou, že nemá práva resp. že nemůže číst a zapisovat, ikdyž to pod uživatelem šlo, netuším... zítra sem kdyžtak hodím chybu co to hlásilo...
Toto APT má schopnosti svaté krávy.
25.11.2009 10:04 Martinus | skóre: 21 | blog: martinus
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
A nesahá tam dosemu pod svojí vlastní skupinou/uživatelem? Prostě bych jen zkontroloval práva k tomu souboru (pro ověření stačí dát všem práva na všechno ;-) )
Free your mind and the ass will follow...
25.11.2009 10:07 maniakum | skóre: 20 | blog: medved
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
jo, tak to mě nenapadlo, že by neměl tohle. mno každopádně, tímhle "scriptem" jsme vyřešili víc věcí... zkusím to, dám vědět..
Toto APT má schopnosti svaté krávy.
25.11.2009 11:32 CET
Rozbalit Rozbalit vše Re: Bash script na aktualizaci souboru
Odpovědět | Sbalit | Link | Blokovat | Admin
Jeste by pak byla moznost to do linuxu pripojit pres smbfs/cifs a te nadresar pak na stejnym linuxu nasdilet pres NFS a pak ho na stejnej stanici pripojit nekam jinam.

Ale zkus se mrknout na smbmount parametry uid, gid, fmask a dmask. Ale je mozny, ze se DOSBOX snazi kontrolovat ty prava nejak vic nez bash a pak to odmitne. Nebo kontroluje vlastnika a ikdyz pravo zapisu je, vlastnik je jinej, tak to zamitne.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.