Vlákno názorů k článku Chytrému napověz... od Vladimír Marek - htm2html: #!/bin/sh for name in ${@} ; do mv ${name}...

  • Článek je starý, nové názory již nelze přidávat.
  • 24. 11. 2000 13:59

    Vladimír Marek (neregistrovaný)

    htm2html:

    #!/bin/sh

    for name in ${@} ; do mv ${name} ${name}l ; done

    Takhle by ale byly všechny existující soubory přepsány

    for name in ${@} ; do echo 'n' | mv -i ${name} ${name}l ; done

    Tohle už nepřepíše existující soubory, ale narozdíl od perlového vzoru vypíše všechny otázky zda přepsat, nebo nepřepsat soubor (což by nakonec mohla být i výhoda :).

    for name in ${@} ; do echo 'n' | mv -i ${name} ${name}l > /dev/null ; done

    Tahle verze by měla fungovat stejně jako program v Perlu.


    2lower:

    #!/bin/sh

    for name in ${@} ; do

    echo 'n' | mv -i ${name} `echo ${name} | tr [:upper:] [:lower:]` > /dev/null ;

    done


    mvfl:

    #!/bin/sh

    floppy='/mnt/floppy';

    while [ 1 ]; do

    mount ${floppy}

    mv -ivr ${floppy}/* ./

    umount ${floppy}

    echo 'Další disketa? (ENTER=Ano, CTRL+C=Ne)'

    read

    done


    Použít perl místo sedu jen pro nahrazení jednoho řetězce jiným se mi zdá jako trochu moc velký luxus, je ale pravda, že sed pokud vím neumí vytvářet zálohy měněných souborů. Že jdou obrázky stahovat i lynxem jsem nevěděl, doposud jsem používal wget, který navíc umí stahovat i rekurzivně.


    Disclaimer:

    Perl mám taky rád, ale na některý věci je to podle mě kanón na vrabce, a skriptíky co jsem sem napsal snad nejsou až tak moc složitější, než ty perlovské. Je pravda, že kdyby první parametr pro htm2html měl být string, který se pak přidá ke jménu ostatních souborů (místo 'l'), tak bych asi se shellem skončil.

  • 24. 11. 2000 14:34

    dominik sauer (neregistrovaný)

    ale cobyste koncil se shellem ;))

    #!/bin/bash
    SUF=${1}
    shift 1
    for name in ${@} ; do mv ${name} ${name}${SUF} ; done

  • 25. 11. 2000 9:55

    Michal Burda (neregistrovaný)

    Nasledujicim si nejsem 100 procentne jisty, ale: zkopiruje ta vase verze mvfl i soubory zacinajici teckou? Muzete pridat "mvfl -iv .* ./", jak se ale potom zbavit chybove hlasky o nemoznosti presunu adresare "." a ".."?

  • 25. 11. 2000 17:33

    Vladimír Marek (neregistrovaný)

    Máte pravdu, to jestli se soubory začínající '.' zkopírují, nebo ne, je otázka. Afaik to závisí na nastavení shellu. V bashi by pomohlo přidat 'shopt -s dotglob'.