Ero sivun ”Rm” versioiden välillä

Siirry navigaatioon Siirry hakuun
2 932 merkkiä lisätty ,  10. joulukuuta 2020
p
.
(tiedoston poisto ei vaadi oikeuksia tiedostoon; \rm tai /bin/rm rm -f sijaan)
p (.)
 
(21 välissä olevaa versiota 9 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
Komento '''rm''' poistaa valitun tiedoston. Poistaaksesi tiedoston sinulla täytyy olla kirjoitusoikeudet hakemistoon jossa tiedosto sijaitsee – itse tiedostoon ei tarvita oikeuksia (muuta kuin jos hakemistossa on t-bitti aktiivisena ja tiedosto on toisen omistuksessa).
{{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}}
[[Komentorivi]]komento '''rm''' poistaa valitun tiedoston. Poistaaksesi tiedoston sinulla täytyy olla kirjoitusoikeudet hakemistoon jossa tiedosto sijaitsee – itse tiedostoon ei tarvita oikeuksia (muuta kuin jos hakemistossa on t-bitti aktiivisena ja tiedosto on toisen omistuksessa).


Normaalisti <tt>rm</tt> ei kysy varmistusta kuin kahdessa tapauksessa: jos tiedostoon ei ole kirjoitusoikeuksia tai jos valitsin <tt>-i</tt> on käytössä (explisiitisti tai [[alias|aliaksen]] kautta). Valitsimella <tt>-f</tt> varmistusta ei kysytä näissäkään tapauksissa.
Normaalisti <tt>rm</tt> ei kysy varmistusta kuin kahdessa tapauksessa: jos tiedostoon ei ole kirjoitusoikeuksia tai jos valitsin <tt>-i</tt> on käytössä (explisiitisti tai [[alias|aliaksen]] kautta). Valitsimella <tt>-f</tt> varmistusta ei kysytä näissäkään tapauksissa.


Itse asiassa komento ei ensisijaisesti poista tiedostoa kiintolevyltä, vaan sen nimen hakemistosta. Tiedosto saattaa esiintyä useammassa hakemistossa tai eri nimillä ja vasta viimeisen ''linkin'' poistamisen myötä tiedosto häviää (<tt>[[ls]] -l</tt> näyttää linkkien määrän). Jos tiedosto on jonkin ohjelman käytössä, ohjelma voi jatkaa sen käyttöä riippumatta siitä onko tiedosto poistettu hakemistoista.
Itse asiassa komento ei ensisijaisesti poista tiedostoa kiintolevyltä, vaan sen nimen hakemistosta. Tiedosto saattaa esiintyä useammassa hakemistossa tai eri nimillä ja vasta viimeisen [[Kova linkki|kovan linkin]] poistamisen myötä tiedosto häviää (<tt>[[ls]] -l</tt> näyttää linkkien määrän). Jos tiedosto on jonkin ohjelman käytössä, ohjelma voi jatkaa sen käyttöä riippumatta siitä onko tiedosto poistettu hakemistoista.


==Käyttö==
==Käyttö==
Poista tiedosto
$ rm poistettava_tiedosto


* Poista tiedosto
Poista hakemisto ja sisältö rekursiivisesti (varmista, ettei komennossa ole ylimääräisiä välilyöntejä tai hakemistonimessä erikoismerkkejä)
rm poistettava_tiedosto
  $ rm -r poistettava_hakemisto
* Poista hakemisto ja sisältö rekursiivisesti (varmista, ettei komennossa ole ylimääräisiä välilyöntejä)
  rm -r poistettava_hakemisto


Jos <tt>rm</tt> kyselee turhia, se on alias. Oikean rm-komennon saa käyttöön joko antamalla polku <tt>/bin/rm</tt> tai käyttämällä muotoa <tt>\rm</tt>.
Poista kaikki tiedostot laitteella
{{Haitallinen esimerkki|komento|Poistaa kaikki tiedostot laitteelta.}}
$ sudo rm -rf /


Lisätietoja saat komennolla:
{{Vinkki|Hyvä tapa opetella turvallisuuden lisäämiseksi, ettet vahingossa vain poista väärää sijaintia, on sijoittaa <code>-rf</code> valitsin vasta sijainnin jälkeen: rm <hakemisto> -rf }}
  [[man]] rm
 
$ sudo rm / -rf
 
Jos <tt>rm</tt> kyselee varmistusta, on se [[alias]]. Oikean rm-komennon saa käyttöön joko antamalla polun <tt>/bin/rm</tt> tai käyttämällä muotoa <tt>\rm</tt>.
===Ongelmatiedostot===
Jos poistettavassa tiedostonimessä on erikoismerkkejä (Unixeissa kaikki merkit paitsi <tt>\0</tt> ja kauttaviiva ovat sallittuja), tiedoston voi poistaa esimerkiksi näin:
* Lainausmerkit toimivat hyvin, jos tiedostonimessä on esimerkiksi välilyöntejä. Niitä kannattaa käyttää aina, kun tiedostonimiä käsittelee skripteissä.
* "Hipsut" estävät useimpien erikoismerkkien toiminnan.
* Kenoviiva muuttaa sitä seuraavan erikoismerkin tavalliseksi merkiksi.
* Polun määrittäminen siirtää ongelmallisen alkumerkin ongelmattomaan kohtaan.
* Tähdellä voi määritellä nimiä, joita ei voi helposti kirjoittaa, ja valitsimella -i niistä voi poimia poistettavat. Muoto \rm tai /bin/rm varmistaa ettei aliaksen kautta käytetä valitsinta -f.
$ [[ls]]
a b  a"b  a*b  -ab  a?b
 
$ rm "a b"
$ rm 'a"b'
$ rm a\*b
$ rm ./-ab
$ \rm -i a*b
 
Poista hakemiston kaikki piilotiedostot (poistamatta mitään ylähakemistosta):
$ rm ./.[^.]*
$ ls
...  ..abc  a  b  c
$ rm ./..?*
 
Rikkinäisellä medialla ja joissakin toisissa yhteyksissä voi esiintyä tiedostoja, joita pääkäyttäjäkään ei voi poistaa. Varmista, että osio ei ole kirjoitussuojattu (<tt>[[mount]] -o remount,rw osio</tt>) ja ettei tiedotoa ole suojattu erikoismääreillä (<tt>[[lsattr]] tiedosto</tt>). Erilaiset "haamutiedostot" on monessa tapauksessa mahdollista saada häviämään tarkistamalla ja korjaamalla tiedostojärjestelmä [[fsck]]:n avulla.
 
==Valitsimia==
*'''-f''' - ei kysellä koskaan mitään
*'''-i''' - kysytään ennen jokaisen tiedoston poistamista
*'''-I''' - kysyy vain kerran, jos poistettavia tiedostoja on yli kolme tai jos käytetään rekursiivista poistoa (<tt>-r</tt>-[[valitsin]])
*'''--interactive=''' - säätelee varmistuksen kyselyä, <tt>never</tt>-arvolla ei kysellä lainkaan, <tt>once</tt> on sama kuin valitsin <tt>-I</tt> ja <tt>always</tt> sama kuin valitsin <tt>-i</tt>
*'''--one-file-system''' - ei poista kuin yhteen tiedostojärjestelmään kuuluvia tiedostoja
*'''--preserve-root''' - ei sovella rekursiivista poistoa [[juuriosio|juurihakemistoon]] (oletus)
*'''--no-preserve-root''' - mahdollistaa juurihakemiston rekursiivisen poiston (käytä jos haluat tuhota järjestelmäsi)
*'''-r, -R''' - rekursiivinen poisto (poistaa myös hakemistot)
*'''-v''' - tulostaa jokaisen tiedoston nimen ennen sen poistoa (''verbose'')
 
Lisätietoja saa komennolla:
  [[info]] rm


==Katso myös==
==Katso myös==
*[[PhotoRec]] (tiedostojen palautus)
*[[ls]] (tiedostolistaus)
*[[ls]] (tiedostolistaus)
*[[ln]] (linkitys)
*[[ln]] (linkitys)
*[[mv]] (tiedostojen siirtäminen)
*[[rmdir]] (hakemiston poistaminen)
*[[rmdir]] (hakemiston poistaminen)
*[[mkdir]] (hakemiston luominen)
*[[mkdir]] (hakemiston luominen)


[[Luokka:Coreutils]][[Luokka:Komentorivin perustyökalut]]
[[Luokka:Coreutils]][[Luokka:Komentorivin perustyökalut]]
[[pl:Rm]]
10 147

muokkausta

Navigointivalikko