Új hozzászólás Aktív témák

  • bambano
    titán

    sziasztok

    nem feltétlenül konkrétan scriptre volna szükségem, inkább segítsetek kitalálni egy algoritmust, amivel meg tudom oldani a következő nyűgömet. persze ha valaki azonnal ír rá nekem egy bash-scriptet, az sem zavar :U

    adott egy mappa, így néz ki

    különböző projektek korábbi verziót tartalmazza, amikor új változat készül egy projektből, akkor a korábbi az itt látott séma alapján projektnev_n+1 formában idekerül.

    jellemzően az utolsó kettő változatra szokott szükség lenni, ezért a régebbieket törlöm (természetesen minden rendszeresen archiválásra kerül), az utolsó kettő itt marad.

    hogyan magyarázzam el a számítógépnek, hogy ezt csinálja meg helyettem?

    le kell választani az utolsó aláhúzás+számok részt a névről és ami marad, az alapján sorbamenni, és letörölni a kettőnél nagyobb verziókat.

    valahogy így:
    ls -c | sed -e 's/\(.*)\(_[0-9]?)$/\1|\2/' | while IFS=\| read name version ; do
    törlöd, ami a $name névcsoportban van és nem az utolsó kettő
    done

    szerk: nem hibátlan, fejből írtam ellenőrzés nélkül :)

Új hozzászólás Aktív témák