Tiedostojen poisto-ongelma "Argument list too long"

Anonyymi-ap

Yritän poistaa tiedostot joiden nimessä on "Simpsons".

$ rm *Simpsons*
bash: /usr/bin/rm: Argument list too long

$ rm -f *Simpsons*
bash: /usr/bin/rm: Argument list too long

$ sudo rm -f *Simpsons*
bash: /usr/bin/sudo: Argument list too long

Ei tunnu onnistuvan.

21

250

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Myös "ls" valittaa samaa, kun yrittää käyttää jokerimerkkiä.

      $ ls | wc -l
      45379

      ls *Simpsons* | wc -l
      bash: /usr/bin/ls: Argument list too long
      0

    • Anonyymi

      Hienoa pojat, itsensä kehittäminen ja järjestelmänsä tunteminen on asioita joissa haluan vain kannustaa eteenpäin. Tunnen tämän ongelman, mutten halua viedä keneltäkään sitä onnistumisen iloa minkä juuri tämän ratkaisu antaa.

      Onkin jo paljon aikaa edellisestä yhtä hienosta avauksesta.

      • Anonyymi

        $ find . -name "*Simpsons*" -print0 | xargs -0 rm

        Tuommoinen toimi.


      • Anonyymi

        Sen siitä saa kun täyttää kovalevyn sekalaisella roskalla.


      • Anonyymi
        Anonyymi kirjoitti:

        $ find . -name "*Simpsons*" -print0 | xargs -0 rm

        Tuommoinen toimi.

        Onneksi on Windows niin ei tarvitse saakeli tiedostojen poistamiseen mitään kryptisiä komentoja.

        HOHHOIJJAAAAH!


      • Anonyymi
        Anonyymi kirjoitti:

        Sen siitä saa kun täyttää kovalevyn sekalaisella roskalla.

        Nooh videoita editoidessa syntyy frameja.


      • Anonyymi
        Anonyymi kirjoitti:

        $ find . -name "*Simpsons*" -print0 | xargs -0 rm

        Tuommoinen toimi.

        Kyllä, se toimii, mutta uskaltaskohan tuohon rm -komentoon lisätä automaattista kuittausta mukaan kun nyt käsitellään hyvin suurta ryhmää nimikkeitä.


      • Anonyymi
        Anonyymi kirjoitti:

        Onneksi on Windows niin ei tarvitse saakeli tiedostojen poistamiseen mitään kryptisiä komentoja.

        HOHHOIJJAAAAH!

        EI TARVITA LINUXISSAKAAN! Jotkut vaan haluaa tehdä juttuja vaikeamman kautta.


    • Anonyymi

      Tuo find -komennon käyttäminen on hidas tapa hakea tiedostoja, kuinkahan tuo ratkaistaisiin ilman find -komentoa.

    • Anonyymi

      Ongelma johtuu bash:sta, joka täydentää tuon tähti-merkin ansiosta komentorivin automaattisesti, eli jos hakemistossa on tiedostot f1,f2 ja f3 ja annat komennon:
      $ rm ./f*
      Täydentää komentotulkki tuon komennoksi 'rm ./f1 ./f2 ./f3'. Komennon pituus taas rajoittuu ARG_MAX:n mukaan:
      $ getconf ARG_MAX
      2097152
      -Kertoo, että parametrien maksimipituus on n. 2 megatavua. Em. muuttuja on määritelty POSIX.1-standardissa ja sen muuttaminen vaatisi itse asiassa kaikkien komentoriviä käyttävien ohjelmien uudelleen kääntämistä - mikäli ymmärsin oikein.
      Saat komennon toimimaan välttämällä argumenttien täydennyksen käyttöä, esim.
      $ rm /path/to/Simpsons/
      Tuo find ei ole erityisen hidas vaikka sen heikko puoli onkin se, että tiedostot haetaan vasta komennon jälkeen - eli suoraan levyltä nykytilanteen mukaisesti. Vaihtoehto on käyttää locate-komentoa ja sen updatedb:ta, joka päivittää hakemistorakenteen tietokantaan ja toimii tämän jälkeen nopeasti. Huono puoli on kuitenkin se, että tietokanta vanhenee ja sitä pitää päivittää aina välillä.

      • Anonyymi

        Koska kyseessä on bash:n ongelma, mikä näkyy error-viestin alusta, sitä voi näköjään säätää ulimit-komennolla eli:
        $ ulimit -S -s unlimited
        Tämän jälkeen bash käyttää hiukan isompaa pinoa käsitellessään tiedostonimiä ja komento itse asiassa voi onnistua.


    • Anonyymi

      ihme kun ei ilmoittanut: "Insufficient memory to complete operation requested".

    • Anonyymi

      Etkö osaa poistaa graafisella tilalla? voi voi..

    • Anonyymi

      Avaa Tiedotot ja laita hakusanasi hakukohtaan ja likkaa suurennuslasia tai paina entter...

      Päätettä ei tarvita!

      • Anonyymi

        Tiedotot?

        Herrajumala, mitä siitä tulisi jos sinä joutuisit konetta käskyttämään kirjoittamalla.


      • Anonyymi

        Ubuttaja hei, ihanko itse kirjoitit?

        "Enter" EI entter


    • Anonyymi

      Asensin Max Paynea koneessa, jossa 24gb muistia.
      Sain jotain insufficient memory höpinää.
      Wintoos ei vain toimi.

    • Anonyymi

      Kauheita virheitä komennossa!

    • Anonyymi

      rm -v *homer*

    • Anonyymi

      No mutta, olipa hyvä ja asiapitoinen ketju, pistänpä pienen pähkinän, jonka vain terävin osaajien kärki pystyy selittämään.

      >>> bind '"\e[18~":"date \n"'

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mitkä asiat

      tekevät vaikeaksi kohdata kaivattusi?
      Ikävä
      74
      1114
    2. Mikä jäi sanomatta kaivatullesi?

      Ja milloin?
      Ikävä
      75
      1101
    3. Rakas

      Eihän se tietysti minulle kuulu, mutta missä sinä olet? 😠
      Ikävä
      48
      1004
    4. Miltä se tuntuu

      Miltä se tuntuu havahtua, että on ollut ihmistä kohtaan, joka on rakastanut ja varjellut, täysi m*lkku? Vai havahtuuko s
      Ikävä
      104
      958
    5. Pidit itseäsi liian

      Vanhana minulle? Niinkö?
      Ikävä
      51
      935
    6. En mahda sille mitään

      Olet ihanin ja tykkään sinusta todella paljon.
      Ikävä
      33
      717
    7. Haluaisitko oikeasti

      Vakavampaa välillemme vai tämäkö riittää
      Ikävä
      49
      704
    8. Mitä se olisi

      Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?
      Ikävä
      34
      607
    9. Joko olet luovuttanut

      Mun suhteen?
      Ikävä
      50
      590
    10. Nanna Karalahti :Paljastus bisneksistä Jere Karalahden kanssa!

      Ottanut yhteyttä seiskalehden toimittajaan ja kertonut totuuden yhteisestä Herotreeni-nimisestä verkkovalmenuksesta.
      Kotimaiset julkkisjuorut
      118
      547
    Aihe