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

  • Tamy

    senior tag

    Sziasztok!

    Egy scriptet próbálok összedobni, ami az utolsó kettő kivételével törli egy mappából a fájlokat.

    Valami ilyesmi az elképzelés:

    #!/bin/sh

    DIR=/home/user/Képek
    DB=`ls -l $DIR | wc --l`
    LIST=`ls -tr $DIR | head -n -2`
    if [ -s $DB 3]
    then
    rm -rf $LIST
    else
    exit 0
    fi

    Két gondom van vele: Egyrészt a "if [ -s $DB 3]" sor hibát dob, miként lehetne megadni, hogy akkor fusson le a törlés, ha több mint két fájl van a mappában (azért 3-at adtam meg, mert a mappát is beleszámolja)? A másik, hogy a törlés nem fut le.

    Ha külön kilistázom, így: "ls -tr /home/user/Képek | head -n -2", megmutatja a találatokat, és másik paranccsal törölni is tudom, de a kettő együtt hibát dob: ""rm: ”003.jpg” nem törölhető: Nincs ilyen fájl vagy könyvtár", holott manuálisan megadva törli. Ha nem írom hozzá az rf kapcsolót, akkor nem panaszkodik, de nem történik semmi.

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