Tiedostojen poisto

Mulla on tiedostossa lista poistettavista tiedostoista. Jokaisen rivin eli tiedoston eteen pitäisi liittää "del ". Miten tämä tehdään windowsissa?

Linuxissa riittää shellissä ripsu "sed 's/^/del /' file1.txt > file2.txt" tekemään homman.
7223
Äänestä

Muut lukivat myös

Vastaukset 7

Vanhimmat

Asenna Cygwin ja tee samalla tavalla kuin Linux-puolella?

Äänestä
  • Eikös tuo poista suoraan tiedoston eikä lisää jokaisen rivin alkuun del-komentoa.

    Äänestä

  • Anonyymi00003 kirjoitti:

    Eikös tuo poista suoraan tiedoston eikä lisää jokaisen rivin alkuun del-komentoa.

    Kyllä. Se toteuttaa sen mitä tapahtuisi kun aloittaja nimeäisi tiedostonsa .bat - tyyppiseksi ja ajaisi sen dos - promptista.

    Jos aloittaja haluaa tehdä tuon saman sed - editoinnin Windowsin puolella niin komennosta sed löytyy kyllä Windowsissa ajettava versiokin. Hakusana: sed for windows.

    Jos on pakko käyttää vain jo asennettuja Windows - komentoja niin onnistuu myös PowerShell - skriptillä sopivaa regex komentoa käyttäen. Esimerkiksi

    https://mcpmag.com/articles/2018/08/08/replace-text-with-powershell.aspx
    https://www.sharepointdiary.com/2021/04/string-replacement-in-powershell.html

    Äänestä

  • Anonyymi00003 kirjoitti:

    Eikös tuo poista suoraan tiedoston eikä lisää jokaisen rivin alkuun del-komentoa.

    Tuo "do del..." pitäisi varmaankin olla "do echo 'del...'" >uusilista.txt tjsp.

    Äänestä

  • Anonyymi00006 kirjoitti:

    Tuo "do del..." pitäisi varmaankin olla "do echo 'del...'" >uusilista.txt tjsp.

    for /F "tokens=*" %i in (lista.txt) do echo del "%i" >> poistoskripti.bat

    Tuossa paranneltu versio.

    Äänestä

Asenna editori notepad++ ja tee merkkijonojen korvaus tiedostolle regex-lauseella.

Äänestä

Kommentoi aloitusta


Anonyymi-ap kirjoitti:

Mulla on tiedostossa lista poistettavista tiedostoista. Jokaisen rivin eli tiedoston eteen pitäisi liittää "del ". Miten tämä tehdään windowsissa?

Linuxissa riittää shellissä ripsu "sed 's/^/del /' file1.txt > file2.txt" tekemään homman.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu