md5sum ohjelmasta kysymys

Anonyymi-ap

Miksi md5sum antaa ihan saman tarkistussumman ilman -b valitsinta/optiota kuin sen kanssakin? Tuo -b on siis binaaritiedoston optio. Ainakin olevinaan, oletuksena tuossa ohjelmassa on tekstitiedoston md5summa, mutta kokeilin muutamalla binaaritiedostolla, niin sain lopputulokseksi ihan saman md5summan -b valitsimella ja ilman sitä.

Miksi näin? Sinänsä ihan hyvä ohjelma tuo md5sum, tosin md5deep on vielä parempi kun se osaa kurkistaa alihakemistoihin ja niissä oleviin tiedostoihinkin.

11

179

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Kun loitsuaa man md5sum niin siellä on rivi
      Note: There is no difference between binary mode and text mode on GNU systems.

      • Anonyymi

        Ahaa, no mitä varten tuo -b valitsin sitten ylipäätään on olemassa?


      • Anonyymi

        Komensin terminaalissa tuon man md5sum mutta en löytänyt tuollaista huomautusta.


      • Anonyymi
        Anonyymi kirjoitti:

        Ahaa, no mitä varten tuo -b valitsin sitten ylipäätään on olemassa?

        Yhteensopivuuden vuoksi. Komentoja käytetään skripteissä jne. Alusta ei ole aina välttämättä sama.


      • Anonyymi
        Anonyymi kirjoitti:

        Yhteensopivuuden vuoksi. Komentoja käytetään skripteissä jne. Alusta ei ole aina välttämättä sama.

        Ilman -b valitsinta ohjelma lukee rivin kerrallaan tekstiä, joka päättyy '\n' merkkiin. Sen sijaan -b valitsimen kanssa se lukee bufferin täyteen, jolloin se tekee aina maksimaalisen määrän työtä per kierros. Ainoastaan viimeinen lukukerta jää luultavasti vajaaksi, koska tiedosto loppuu. Toisin sanoen -b valitsimen kanssa pitäisi olla nopeampaa käsitellä isoja tiedostoja - tiedä sitten kuinka paljon.


    • Anonyymi

      Luin juuri lisää tuosta ja ilmeisesti ainakaan Linuxeissa tuolla ei ole mitään merkitystä onko -b vai ei, MSDOSissa sen sijaan kyllä, mutta entä Windowsissa, onko merkitystä noilla kahdella moodilla?

      • Anonyymi

      • Anonyymi
        Anonyymi kirjoitti:

        "In Windows, reading O_BINARY gives you the raw data, possibly odd line endings and all, while O_TEXT normalises the line endings, so your C code only sees a single character."

        https://stackoverflow.com/questions/2266992/no-o-binary-and-o-text-flags-in-linux

        O_BINARY lippu sitten md5sum koodissa

        https://github.com/wertarbyte/coreutils/blob/master/src/md5sum.c

        if (O_BINARY)
        fputs (_("\
        -b, --binary read in binary mode (default unless reading tty stdin)\n\
        "), stdout);
        else
        fputs (_("\
        -b, --binary read in binary mode\n\
        "), stdout);

        Tuossa siis vaihtoehdot käyttäjälle. Yhtä hyvin tulosteessa vois lukea windows koneessa errä rivinvaihoon käytetään \n\r

        Tai linuxsissa että "vittu me mitään tollasesta tajuta"

        Koodin tekijä kumminkin päätynyt omaan ratkaisuunsa... Parempi olisi ehkä ettei linuxissa edes tarjois valitsinta -b.


      • Anonyymi
        Anonyymi kirjoitti:

        if (O_BINARY)
        fputs (_("\
        -b, --binary read in binary mode (default unless reading tty stdin)\n\
        "), stdout);
        else
        fputs (_("\
        -b, --binary read in binary mode\n\
        "), stdout);

        Tuossa siis vaihtoehdot käyttäjälle. Yhtä hyvin tulosteessa vois lukea windows koneessa errä rivinvaihoon käytetään \n\r

        Tai linuxsissa että "vittu me mitään tollasesta tajuta"

        Koodin tekijä kumminkin päätynyt omaan ratkaisuunsa... Parempi olisi ehkä ettei linuxissa edes tarjois valitsinta -b.

        Eikä käyttis sen parempi olis vaikka rivinvaihtoon käytettäs kaikkia aakkosia aasta ööhön.

        Lisäsin koska joukossa voi olla yksinkertaisiakin ihmisiä.


      • Anonyymi
        Anonyymi kirjoitti:

        if (O_BINARY)
        fputs (_("\
        -b, --binary read in binary mode (default unless reading tty stdin)\n\
        "), stdout);
        else
        fputs (_("\
        -b, --binary read in binary mode\n\
        "), stdout);

        Tuossa siis vaihtoehdot käyttäjälle. Yhtä hyvin tulosteessa vois lukea windows koneessa errä rivinvaihoon käytetään \n\r

        Tai linuxsissa että "vittu me mitään tollasesta tajuta"

        Koodin tekijä kumminkin päätynyt omaan ratkaisuunsa... Parempi olisi ehkä ettei linuxissa edes tarjois valitsinta -b.

        Valitsin on yhteensopivuussyistä mukana, jottei esimerkiksi skriptit joissa sitä on käytetty mene rikki sen vuoksi, että valitisinta käytettäessä komento päättyy virheeseen.


      • Anonyymi
        Anonyymi kirjoitti:

        Valitsin on yhteensopivuussyistä mukana, jottei esimerkiksi skriptit joissa sitä on käytetty mene rikki sen vuoksi, että valitisinta käytettäessä komento päättyy virheeseen.

        Tosi en tuota ajatellut loppuun asti...


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

    Takaisin ylös

    Luetuimmat keskustelut

    1. Ketä tietää

      Missä ammuttiin pyssyllä.
      Kotka
      63
      6156
    2. Ei tunnu, että välität yhtään

      Tuntuu, että et edes muista minua koko ihmistä. 😢
      Ikävä
      63
      5559
    3. Vimpelin liikuntahallilla tulipalo?

      Katsoin, että liikuntahallista tuloo mustaa savua. Sitten ovet pärähti hajalle, ja sisältä tuli aikamoinen lieska. Toise
      Vimpeli
      125
      4331
    4. Onko kaipaamallasi

      Naisella silikonit 🤔
      Ikävä
      54
      3842
    5. Näytitpä taas niin hyvältä!

      Nautit tilanteesta täysin rinnoin. Sinä olet kuin
      Tunteet
      14
      3785
    6. Veikeä Satu

      Tuu jutteleen, kaipaan sua. Oot kuuma nainen.
      Ikävä
      32
      3209
    7. Oletko nyt

      Onnellinen mies naisesi kanssa?
      Ikävä
      63
      2961
    8. Rakastatko?

      Ala kertomaan se ja heti
      Ikävä
      59
      2836
    9. Mikä haluat olla kaivatullesi?

      1. Kaveri 2. Ystävä 3. Panokaveri 4.puoliso 5 jokin muu
      Ikävä
      68
      2568
    10. Kosiako meinasit?

      Voi sua rakas ❤️
      Ikävä
      47
      1950
    Aihe