alla fini sono tornato all' idea originale e ho fattouno script che legge il database in csv, legge la data, cambia la data e ora al sistema e poi inserisce nel db i dati attraverso w3m assieme ad un altro script in php.
ovviamente mentre è in funzione il seguente script, il computer è inutilizzabile per altri scopi, in compenso il database mysql ha tutte le entry perfettamente ordinate per data. #!/bin/bash WHOAMI=$(whoami) if [ $WHOAMI != root ]; then echo "...devi diventare root con il comando su prima di lanciare questo script" exit fi TOPICS=topics_to_add.csv IFS=$'\x0A'$'\x0D' # fa in modo che prenda l' intera linea come input per il ciclo for for LINE in `cat $TOPICS`; do TIME=$(echo $LINE | cut -d ',' -f7 | tr -d '"' | cut -d ' ' -f1) H=$(echo $LINE | cut -d ',' -f7 | tr -d '"' | cut -d ' ' -f2) date -s "$TIME" date -s "$H" echo "$LINE" > /var/www/topics_to_add.csv w3m -dump -cookie http://localhost/add-topics.php done ntpdate www.clock.org # rimette a posto la data ----------------------------------------------------------------------------------- saluti MaX Il 24/06/13, MaX<maxlinux2...@gmail.com> ha scritto: > ok, ho capito come funziona lo script php... vuole avere all' inizio > un il primo post con id 0.... mmm la cosa si complica.... preparerò un > piccolo csv, e vi speigo il problema in un altro tread > > si tratta di estrarre i post in base al secondo campo, metterli in > ordine di data in base al settimo campo, e poi rinominare il terzo > campo da 0 in crescendo..... vediamo se è possibile fare questo con > cut/awk/sort... probabilmente awk è la scelta migliore.... > apriró un altro post più tardi > > Il 24/06/13, MaX<maxlinux2...@gmail.com> ha scritto: >> ciao, >> >> pensandoci bene, non è assolutamente necessario che la data sia >> corretta, al limite la aggingo all' inizio del messaggio e tanti >> saluti... ora peró ho un problema più grave. >> >> lo script php che credevo funzionasse per inserire i dati, mi sta >> facendo le bizze. >> >> Ho messo nel CSV, una unica linea contenente un post completo, e mi >> risponde questo: >> =============================== >> username: ALEX >> ERROR: No Parent Found >> --No Parent thread found : Signori soci ..... - Riservata Admin >> Faidate&Offgrid >> FINISHED >> ================================ >> >> Lo script l' ho trovato qui: >> https://www.phpbb.com/community/viewtopic.php?p=7174735#p11693665 >> >> il mio file cvs contiene questi dati: >> >> "11290461","66244108","537039770","Alex","Signori soci ..... - >> Riservata Admin Faidate&Offgrid","Ecco, spero di far cosa >> gradita ... qui possiamo discutere le varie opzioni con calma >> ...<br>Alex<br> >> <br><br>http://fdt.forumfree.it/?t=66244108&p=537039770","1371679200"; >> >> i campi sono rispettivamente: >> >> "forum_id","topic_id","post_id","username","subject","message","post_time" >> >> l' ho montato un una vecchia versione di phbb3 v.3.08 e importato >> tutti gli utenti con il plugin cvs-import-user. >> Ho creato anche la sezione (forum) rispettando il valore del campo >> forum_id (11290461) >> >> a questo punto vorrei sapere cosa gli manca, e se funziona come credo. >> >> leggendo il codice (ma non sono molto bravo in php) pensavo che >> cercasse l' username per ricavare l' id_user, poi cercasse un post >> con il "subjet" e se non lo trova lo crea... ma a quanto vedo, non lo >> crea affatto. >> >> qualcuno versato in php può darmi una mano? >> >> Se riesco a farlo funzionare, poi metteró online l' esperienza e >> scripts per chi dovesse in futuro realizzare migrazioni di forum >> basati su IPB 1.3, a cui non è possibile accedere al database. :) >> >> >> >> >> Il 23/06/13, Teodoro Santoni<asbras...@gmail.com> ha scritto: >>> Ma nel file csv non potevi mettere le date, inserire il csv in un >>> database mysql con date annesse come parte della tabella o delle >>> tabelle, e quindi postare il risultato della query ordinata by quella >>> data lì? È assolutamente necessario che in questa migrazione sia >>> rispettata la data originale all'interno di phpbb? >>> E se postassi tutto un post dopo l'altro e poi giocassi con questa mod >>> qui? https://www.phpbb.com/community/viewtopic.php?f=70&t=2107473 >>> >>> Hai già provato a mandare date -s senza riavviar nulla per poi >>> eseguire oppure, per dire, non ti fidi? >>> >>> Il 23/06/13, MaX<maxlinux2...@gmail.com> ha scritto: >>>> ciao a tutti, >>>> >>>> dopo aver scritto un crawler che mi ha estratto tutti i dati da un >>>> forum di forumfree.it e salvato in un file csv, ora mi sto preparando >>>> a reinserire i dati in un server locale mysql. >>>> >>>> ho trovato uno script in php che fa questo, ha ha il difetto che mette >>>> tutti i post uno dietro l' altro senza rispettare le date in cui sono >>>> stati scritti.... del resto non credo sia possibile per lo script >>>> accedere al server a un cosí basso livello. >>>> >>>> al che stavo pensando di ingannare mysql cambiando la data della >>>> macchina prima, ad ogni linea... >>>> >>>> praticamente: >>>> >>>> leggo la linea 1, >>>> estraggo la data >>>> passo la nuova data al sistema con "date -s" >>>> lancio lo script php che inserisce la linea 1 in mysql attraverso >>>> phpbb3 >>>> leggo la linea 2...... >>>> >>>> il server locale è il mio portatile dove sto facendo gli esperimenti, >>>> quindi non ci dovrebbero essere problemi per cambiare la data circa >>>> 8000 volte in pochi minuti.... tuttavia esiste un rischio. >>>> >>>> e da qui la domanda: >>>> >>>> Mi chiedevo se non fosse possibile riavviare solo il daemon mysql >>>> passandogli una data differenta da quella del sistema. >>>> >>>> >>>> P.S. Non posso inserire i dati direttamente dal csv a mysql, in quanto >>>> il database di phpbb3 è estremamente complesso e sarebbe come >>>> riscrivere phpbb3, per cui la cosa migliore è questa: si utilizza uno >>>> script che usa phpbb3 per inserire i dati. >>>> >>>> >>>> -- >>>> ciao, >>>> MaX >>>> >>>> >>>> -- >>>> Per REVOCARE l'iscrizione alla lista, inviare un email a >>>> debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per >>>> problemi inviare un email in INGLESE a listmas...@lists.debian.org >>>> >>>> To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org >>>> with a subject of "unsubscribe". Trouble? Contact >>>> listmas...@lists.debian.org >>>> Archive: >>>> http://lists.debian.org/caeyavmswngkvw+msqf2z_qfenvp4a-fnadk2o-+empwbhq...@mail.gmail.com >>>> >>>> >>> >> >> >> -- >> ciao, >> MaX >> > > > -- > ciao, > MaX > -- ciao, MaX -- Per REVOCARE l'iscrizione alla lista, inviare un email a debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per problemi inviare un email in INGLESE a listmas...@lists.debian.org To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/caeyavmups0wfanlt_gitgwaup2vyd31keyk3u0venvfxeq3...@mail.gmail.com