Tiedoston generointi sitä avatessa

Onko mitään mahdollisuuksia muodostaa tiedosto dynaamisesti sen avaushetkellä? Siis esimerkiksi avattaessa vaikka tiedostoa "teksti.txt" sen sisältö luodaan avauspyynnön tapahtuessa ja palautetaan sitten dynaamisesti luotu sisältö avaajalle.
14223
Äänestä

Muut lukivat myös

Vastaukset 14

Vanhimmat

Ei voida avata mitä ei ole.

Äänestä

Miksi pitää muuten moneen kertaan lähettää samaa aloitusta?
Kyllä ne aloitukset menee perille kun vähän aikaa viitsii odottaa.

Äänestä
  • Lähetin aloituksen vain kerran. Lähetyshetkellä tuli "palvelinvirhe", mutta se ilmoitus katosi ja aloitus aukeni kuten aloitukset normaalistikin. Tupla-avaus johtuu siis palvelinpään virhetilanteesta.

    Tuohon "ei voida avata mitä ei ole" sanoisin että kyllähän jotain on. Voihan siellä olla pohjana vaikka tyhjä tiedosto. Tarkoitus olisi generoida asetustiedostoja niiden aukaisuhetkellä.

    Äänestä

  • Anonyymi kirjoitti:

    Lähetin aloituksen vain kerran. Lähetyshetkellä tuli "palvelinvirhe", mutta se ilmoitus katosi ja aloitus aukeni kuten aloitukset normaalistikin. Tupla-avaus johtuu siis palvelinpään virhetilanteesta.

    Tuohon "ei voida avata mitä ei ole" sanoisin että kyllähän jotain on. Voihan siellä olla pohjana vaikka tyhjä tiedosto. Tarkoitus olisi generoida asetustiedostoja niiden aukaisuhetkellä.

    No tekee ensin sen tyhjän tiedoston. Eihän tuo nyt vaikeaa ole.

    Äänestä

  • Anonyymi kirjoitti:

    No tekee ensin sen tyhjän tiedoston. Eihän tuo nyt vaikeaa ole.

    Viestisi informaatioarvo on täysi nolla. Ei kannata kommentoida, jos ei ole mitään asiaa.

    Äänestä

En ymmärrä mitä yritetään. touch komennolla voit luoda tyhjän tiedoston. Sinne voit sitten kirjoittaa dataa monella tavalla. Sisältö voi olla myös linkkejä muihin tiedostoihin.

Äänestä
  • Tarkoitus olisi luoda ajantasainen conf-tiedosto sitä avatessa. Joku triggeri pitäisi siis olla avausvaiheessa.

    Äänestä

  • Anonyymi kirjoitti:

    Tarkoitus olisi luoda ajantasainen conf-tiedosto sitä avatessa. Joku triggeri pitäisi siis olla avausvaiheessa.

    Unohda tuollaiset *.conf jutut. Silloin kun mies on niin autuaan tietämätön tiedostojen luku- kirjoitus- ja avaustapahtumista, ei ole mitään syytä mennä sotkemaan jonkin ohjelman asetuksia. Jokainen asetus jonka (10 vuoden päästä) aiot muuttaa, tulee tietää miten se vaikuttaa, mitkä muut ohjelmat ovat asetuksesta riippuvaisia siitä.

    KYSYMYS on HYVIN TYHMÄ!

    Äänestä

  • Anonyymi kirjoitti:

    Unohda tuollaiset *.conf jutut. Silloin kun mies on niin autuaan tietämätön tiedostojen luku- kirjoitus- ja avaustapahtumista, ei ole mitään syytä mennä sotkemaan jonkin ohjelman asetuksia. Jokainen asetus jonka (10 vuoden päästä) aiot muuttaa, tulee tietää miten se vaikuttaa, mitkä muut ohjelmat ovat asetuksesta riippuvaisia siitä.

    KYSYMYS on HYVIN TYHMÄ!

    Tuonkin viestisi informaatioarvo on täysi nolla. Ei kannata kommentoida, jos ei ole mitään asiaa.

    Middleware-tyyppinen ratkaisu siis hakusessa. Esimerkiksi Node.js:n Expressissä käytetään sellaisia. Kun tehdään http-pyyntö johonkin osoitteeseen, niin middleware ottaa kopin, tekee temppunsa ja lähettää käsitellyn pyynnön alkuperäiseen kohteeseen.

    Äänestä

  • Anonyymi kirjoitti:

    Tuonkin viestisi informaatioarvo on täysi nolla. Ei kannata kommentoida, jos ei ole mitään asiaa.

    Middleware-tyyppinen ratkaisu siis hakusessa. Esimerkiksi Node.js:n Expressissä käytetään sellaisia. Kun tehdään http-pyyntö johonkin osoitteeseen, niin middleware ottaa kopin, tekee temppunsa ja lähettää käsitellyn pyynnön alkuperäiseen kohteeseen.

    Sinä et vain kykene omaksumaan viestini sanomaa. Ei ole mitään järkeä koheltaa tuolla tasolla olevan, ellei osaa luoda, poistaa, muokata, nimetä uudelleen ja kopioida tiedostoa. AINA ENSIN tehdään itselleen selväksi perusteet jotta kyettäisiin omaksumaan asioita. Sinun Middleware jutut on täyttä roskaa, et itsekkään ymmärrä omia ohjeitasi, vedä pääsi perseestäsi, koita tajua jotain asiasta johon otat kantaa.

    Äänestä

Voi. Mutta sitten puhutaan putkista(pipes). Ne ovat tiedostoja, joita luettaessa sisällön tuottaa ohjelma. Tai vähän ehkä harhaanjohtavaa sanoa noinkaan - tiedostoa voi lukea, mutta sen sisältö pysyy samana vain, jos ohjelma palauttaa joka kerta saman.
Kirjoita 'man pipe' komentokehotteeseen, niin saat hiukan lisää tietoa. Putkeen siis kytketään kaksi eri ohjelmaa: Se joka kirjoittaa siihen ja se joka lukee sitä. Jos lukijaa ei ole - ei siihen mitään voi kirjoittaakaan. Eli antamalla putkelle komennon 'more tiedosto.txt' saa kirjoittaja mahdollisuuden kirjoittaa dataansa.
On niitä muitakin mekanismeja, mikäli haluat juuri sen konkreettisen tiedoston, mutta ei näin kätevää?

Äänestä
  • dynaamiset www-serverit tekee juurikin tällaista, esim. PHP:llä voi täyttää sivulle kenttiä ja vaikka käyttäjäkohtaista dataa. Hakiessasi sivua se generoidaan sitten lennosta, tosin harvoin fyysiseksi tiedostoksi levyn kulmalle.

    Äänestä

Tarkoitatko nyt, että haluat mahdollisuuden luoda uuden tiedoston niin, että sillä on heti luomisen jälkeen jokin sisältö, joka on on jonkin templaten eli mallipohjan mukainen? Jos tarkotat tuota, niin se on täysin mahdollista. Se onnistuu esimerkiksi Gnome -työpöytää käytettäessä siten, että luot template -tiedoston kotihakemistossasi olevaan Templates -hakemistoon. Suomenkielistä työpöytäympäristöä käytettäessä hakemisto on muistaakseni Mallit. Voit tehdä template-hakemiston alle myös alihakemistoja, joilla voit ryhmitellä templateja. Voit sitten työpöydältä tiedostoselaimessa uutta tiedostoa luodessasi valita minkä templaten perusteella uusi tiedosto luodaan. Voit siis luoda esimerkiksi LibreOffice -dokumentittipohjan jonkinlaista asiakirjaa varten tai voit esim tehdä templaten jotain asetustiedostoa tai vastaavaa varten. Itse käytän tuota Debianissa jatkuvasti.

Yksi kätevä työkalu, jota itse myöskin käytän Debianissa on Autokey. Autokeyn avulla voi luoda tekstinpätkiä, jotka saa sitten automaattisesti lisättyä tekstidokumenttiin. Autokeyllä voidaan määritellä näppispikakomentoja, joita painamalla näppispikakomentoon liitetyn tekstin saa automaattisesti syötettyä mihin tahansa tekstinsyöttökenttään, joten Autokey toimii minkä tahansa tekstiä käsittelevän ohjelman kanssa kunhan ohjelmassa on tekstikenttä, johon tekstiä voi syöttää. Itse käytän tuota Debianissa jatkuvasti ja esimerkiksi lisään yhteystietoni osoitteineeen, sähköpostiosoitteineen, puelinnumeroineen jne tekstidokumenttiin yhdellä näppispikakomennolla. Autokeylle on olemassa gtk ja qt käyttöliittymät, jotka voi asentaa Debianissa näin:

apt install autokey-gtk

apt install autokey-qt



T. miksuh

Äänestä

Kysymyksesi on typerästi muotoiltu. Ajattelet, luulet ja toivot jotain, muttet pysty jostain syystä mitenkään ilmaisemaan itsesäsi järkevästi.

Tein sinulle malliksi Pythonilla komennon, joka muodostaa halutunlaisen tiedoston:

avaa_tiedosto teksti.txt

Toimii täysin automaattisesti. Ei tarvitse muuta kuin tietää mitä haluaa. Voit tehdä tuolla vaikka kouluaineesi, runon, ohjelman tai väitöskirjan millä kielellä vain. Ihan mitä vain mieleesi juolahtaa.

Äänestä

Kommentoi aloitusta


Anonyymi kirjoitti:

Onko mitään mahdollisuuksia muodostaa tiedosto dynaamisesti sen avaushetkellä? Siis esimerkiksi avattaessa vaikka tiedostoa "teksti.txt" sen sisältö luodaan avauspyynnön tapahtuessa ja palautetaan sitten dynaamisesti luotu sisältö avaajalle.

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