Lähimmäksi olen päässyt...
# rm /path/to/directory/*.*
mutta se ei toimi tiedostoille, joilla ei ole tiedostopäätettä...
Linux ei käytä laajennuksia. Tiedoston luoja päättää itse, haluaako hän, että nimellä on laajennus. Linux tarkastelee ensimmäistä tavua selvittääkseen, millaisesta tiedostosta on kyse.
Poistaaksesi kaiken hakemistosta käytä:
rm /path/to/directory/*
Voit käyttää -r
-vaihtoehtoa, esim:
rm -r /polku/hakemistoon/*
...
poistaaksesi myös kaikki alihakemistot (kaikkine sisältöineen) sen hakemiston sisältä, jonka sisällön olet poistamassa. Muussa tapauksessa se näyttää virheen, jossa ilmoitetaan, että hakemistoa ei poisteta.
Jos haluat poistaa vain tiedostot hakemistosta /path/to/directory, voit tehdä seuraavasti
find /path/to/directory -type f -print0| xargs -0 rm
tai
find /path/to/directory -type f -exec rm '{}' \;
Voit tehdä kuormituksia find
:llä, etuna on, että voit listata löydetyt tiedostot ilman, että lähetät ne rm
:ään, joten voit nähdä, mitä poistetaan ennen kuin aloitat.
Jos haluat poistaa myös kaikki alihakemistot ja itse hakemiston, voit käyttää komentoa rm -rf /polku/to/hakemisto
. Mutta tarkista aina rivisi kahdesti ennen kuin painat returnia, rm -rf
voi myös aiheuttaa paljon tuhoa, esimerkiksi jos lisäät vahingossa välilyönnin ensimmäisen vinoviivan jälkeen, kun sinulla on superuser-oikeudet...