abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:00 | Komunita

    Po dvaceti letech skončil leader japonské SUMO (SUpport.MOzilla.org) komunity Marsf. Důvodem bylo nasazení sumobota, který nedodržuje nastavené postupy a hrubě zasahuje do překladů i archivů. Marsf zároveň zakázal použití svých příspěvků a dat k učení sumobota a AI a požádal o vyřazení svých dat ze všech učebních dat.

    karkar | Komentářů: 1
    dnes 11:00 | IT novinky

    Úřad pro ochranu hospodářské soutěže zahajuje sektorové šetření v oblasti mobilních telekomunikačních služeb poskytovaných domácnostem v České republice. Z poznatků získaných na základě prvotní analýzy provedené ve spolupráci s Českým telekomunikačním úřadem (ČTÚ) ÚOHS zjistil, že vzájemné vztahy mezi operátory je zapotřebí detailněji prověřit kvůli možné nefunkčnosti některých aspektů konkurence na trzích, na nichž roste tržní podíl klíčových hráčů a naopak klesá význam nezávislých virtuálních operátorů.

    Ladislav Hagara | Komentářů: 8
    dnes 10:55 | Humor

    Různé audity bezpečnostních systémů pařížského muzea Louvre odhalily závažné problémy v oblasti kybernetické bezpečnosti a tyto problémy přetrvávaly déle než deset let. Jeden z těchto auditů, který v roce 2014 provedla francouzská národní agentura pro kybernetickou bezpečnost, například ukázal, že heslo do kamerového systému muzea bylo „Louvre“. 😀

    Ladislav Hagara | Komentářů: 9
    dnes 01:00 | Komunita

    Z upstreamu GNOME Mutter byl zcela odstraněn backend X11. GNOME 50 tedy poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.

    Ladislav Hagara | Komentářů: 12
    dnes 00:00 | IT novinky

    Byl publikován plán na odstranění XSLT z webových prohlížečů Chrome a Chromium. S odstraněním XSLT souhlasí také vývojáři Firefoxu a WebKit. Důvodem jsou bezpečnostní rizika a klesající využití v moderním webovém vývoji.

    Ladislav Hagara | Komentářů: 1
    včera 15:55 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.3.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 05:55 | IT novinky

    Organizace Open Container Initiative (OCI) (Wikipedie), projekt nadace Linux Foundation, vydala Runtime Specification 1.3 (pdf), tj. novou verzi specifikace kontejnerového běhového prostředí. Hlavní novinkou je podpora FreeBSD.

    Ladislav Hagara | Komentářů: 0
    4.11. 11:33 | IT novinky

    Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.

    Ladislav Hagara | Komentářů: 22
    4.11. 05:44 | Komunita

    Na YouTube a nově také na VHSky byly zveřejněny sestříhané videozáznamy přednášek z letošního OpenAltu.

    Ladislav Hagara | Komentářů: 0
    4.11. 04:33 | Komunita

    Jednou za rok otevírá společnost SUSE dveře svých kanceláří široké veřejnosti. Letos je pro vás otevře 26. listopadu v 16 hodin v pražském Karlíně. Vítáni jsou všichni, kdo se chtějí dozvědět více o práci vývojářů, prostředí ve kterém pracují a o místní firemní kultuře. Můžete se těšit na krátké prezentace, které vám přiblíží, na čem inženýři v Praze pracují, jak spolupracují se zákazníky, partnery i studenty, proč mají rádi open source a co

    … více »
    SUSEMAS | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (48%)
     (18%)
     (17%)
     (22%)
     (15%)
     (21%)
     (16%)
     (16%)
    Celkem 320 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    Dotaz: smazání starých záloh

    5.8.2010 19:28 donjirka
    smazání starých záloh
    Přečteno: 640×
    Zdravím, potřeboval bych poradit s tím jak napsat skript který smaže všechny staré soubory ze složky ale nechá jen např. 3 nejaktuálnější kterých se nedotkne. Našel jsem jen návody kde skript maže soubory po určitém počtu dní ale v tom je problém protože když záloha neproběhne vícekrát po sobě hrozí smazání všech záloh. Snažil jsem se to vytvořit tak že jsem nechal vypsat všechny tary do souboru a ty které nemají být smazané jsem dal do souboru2. Pak jsem podmínkou if nadefinoval porovnání souborů, když se neshodovala tak se spustilo mazání souborů po jednom od zadu jenže to má velikou trhlinu protože když se uděje cokoliv nestandardního tak se můžou smazat všechny...... Ještě mě napadá neumí např. tar sám do sebe vytvořit jen určitý počet archivu a potom je od zadu přepisovat. Skript na to mazání ani uvádět nebudu protože je to mazanina a určitě nesmysl. Skript na zálohu vypadá takto:

    d=`date '+%Y%m%d%H%M'`

    tar -cf ~/archive/archiv$d.tar ~/neco/* &>> ~/tmp/tar

    echo $d &>> ~/tmp/tar

    Díky za nápady

    Odpovědi

    5.8.2010 20:13 voda | skóre: 28
    Rozbalit Rozbalit vše Re: smazání starých záloh
    Co třeba: ls * | sort | head -n-3 | xargs rm
    5.8.2010 22:33 donjirka
    Rozbalit Rozbalit vše Re: smazání starých záloh
    tak tohle bylo přesně ono mockrát díky....asi to není moc elegantní způsob jak jsem to vytvořil ale funguje to dobře .....jsem úplný začátečník......ještě tam přidělam aby se to opakovalo dokud to nezahlásí nemohu smazat....

    cd ~/tmp

    ls archiv* | sort -r | head --lines=3 > soubor.lst

    ls archiv* | sort -r > soubor1.lst

    soubor=soubor.lst

    soubor1=soubor1.lst

    if ( cmp $soubor $soubor1 ) then

    echo "nemohu smazat archivy protože zbývají 3 poslední"

    else

    ls archiv* | sort | head --lines=1 | xargs rm -f

    echo "nepotřebné archvívy vymazány"

    fi

    6.8.2010 07:13 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: smazání starých záloh
    Špatně.

    Pokud uděláte ve skriptu "cd" tak nesmíte neúspěch ignorovat. Raději
    cd ~/tmp || exit 1
    
    Mazání starých záloh (cd+rm) je typická cesta jak jednoho dne smazat něco v úplně jiném adresáři.
    In Ada the typical infinite loop would normally be terminated by detonation.
    6.8.2010 15:39 donjirka
    Rozbalit Rozbalit vše Re: smazání starých záloh
    děkuji za opravu....toto je můj první skript který jsem vytvořil takže ještě nedokážu přesně určit kde se může stát nějaká chyba

    Dnes sem skript ještě trochu upravil

    #!/bin/bash

    cd ~/archiv || exit 1

    # vyhledá všechny archivy ve složce a setřídí reverzně podle stáří (zobrazí jen prví 1,2,3 lines)

    ls archiv* | sort -r | head --lines=3 > log/soubor1.lst

    ls archiv* | sort -r | head --lines=2 > log/soubor2.lst

    ls archiv* | sort -r | head --lines=1 > log/soubor3.lst

    ls archiv* | sort -r > log/soubor.lst

    # proměnné

    soubor=log/soubor.lst

    soubor1=log/soubor1.lst

    soubor2=log/soubor2.lst

    soubor3=log/soubor3.lst

    # porovná soubory a pokud je splněna alespoň jedna z podmínek (existují 1 nebo 2 nebo 3 archivy) vypíše hlášku

    if ( `cmp -s $soubor $soubor1` || `cmp -s $soubor $soubor2` || `cmp -s $soubor $soubor3` ); then

    echo "tyto archivy jsou zachovány

    `cat $soubor`

    `date`"

    else

    # vyhledá všechny archivy seřadí podle stáří vypíše první a smaže ho

    ls archiv* | sort | head --lines=1 | xargs rm -f

    echo "nepotřebné archvívy vymazány"

    # aby se akce opakovala dokud nezůstanou jen 1,2 nebo 3 archivy

    ~/archiv/script/./script2.sh

    fi

    Popisu si nevšímejte to jem dělal abych se v tom vyznal...
    6.8.2010 18:50 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: smazání starých záloh
    No, za prvé ls neřadí implicitně podle času ale abecedně, takže se smažou nesprávné soubory. Za druhé nechápu proč tam máte to 1,2,3. Za třetí není radno ze skriptu rekurzivně volat sebe sama.

    Pokud chcete smazat všechno kromě 3 nejnovějších, tak prostě použijte
    #!/bin/sh
    
    cd ~/archiv || exit 1
    ls -tr archiv* | head -n -3 | xargs rm -f
    
    Pokud tomu nevěříte tak si na to napište program který to za Vás vyzkouší:
    #!/bin/sh
    
    pocatecni_soubory_od_nejstarsiho="archiv-q
    archiv-w
    archiv-e
    archiv-r
    archiv-t
    archiv-a
    archiv-s
    archiv-d"
    
    ocekavane_koncove_soubory_od_nejstarsiho="archiv-a
    archiv-s
    archiv-d"
    
    # vytvoreni pocatecniho stavu
    rm -f archiv*
    for soubor in $pocatecni_soubory_od_nejstarsiho; do
            touch $soubor
            sleep 2
    done
    
    # testovana funkce - smazani
    ls -tr archiv* | head -n -3 | xargs rm -f
    
    # porovnani ocekavaneho vysledku s realitou
    realne_koncove_soubory=`ls -tr archiv*`
    if [[ "$realne_koncove_soubory" = "$ocekavane_koncove_soubory_od_nejstarsiho" ]]; then
            echo mazani funguje jak ma
    else
            echo mazani nefunguje
            echo ocekavano:
            echo "$ocekavane_koncove_soubory_od_nejstarsiho"
            echo realita:
            echo "$realne_koncove_soubory"
    fi
    
    In Ada the typical infinite loop would normally be terminated by detonation.
    6.8.2010 21:43 donjirka
    Rozbalit Rozbalit vše Re: smazání starých záloh
    no tak tohle je trochu jiná káva......napsat si program který to za mě vyzkouší by byla paráda ale problém je že to bych už nevymyslel. Už s tímhle jsem se páral cca 8 hodin :) ... možná za nějaký čas............ jinak díky určitě použiji vaše řešení.
    7.8.2010 09:21 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: smazání starých záloh
    napsat si program který to za mě vyzkouší by byla paráda ale problém je že to bych už nevymyslel.
    Není to zas takový nápor na mozek - stačí 1) napsat konkrétní příklad stavu "před" a "po" a 2) porovnat to s tím, co dělá ten program.
    Už s tímhle jsem se páral cca 8 hodin :)
    Poprvé to vždycky dře, ale pak to jde samo.
    In Ada the typical infinite loop would normally be terminated by detonation.

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.