locked
ricerca testo in file RRS feed

  • Domanda

  • come da titolo, esiste un modo in win7 di ricercare il contenuto di un file di testo (txt, js, css, php o qualunque altro sorgente) come si faceva con windows xp?
    mercoledì 7 marzo 2012 16:37

Tutte le risposte

  • Questo è uno script che risolve il problema. Eseguendolo, verrà richiesta l'estensione (esempio .php) su cui si vuole abilitare il filtro di ricerca all'interno dei contenuti

    Oppure si può agire da "pannello di controllo" operando sulle "opzioni di inicizzazione"  ma non è esattamente la stessa cosa

    @ECHO Off
    cls
    :: set-filter.cmd
    :: Gastone Canali
    :: http://support.microsoft.com/kb/309173 
    :: http://msdn.microsoft.com/en-us/library/windows/desktop/dd940428(v=vs.85).aspx
    :: questo script abilita la ricerca 
    :: del contenuto di un file con una determinata estensione
    :: In Windows 7 deve essere esguito come Amministatore 
    :: {eec97550-47a9-11cf-b952-00aa0051fe20} {5e941d80-bf96-11cd-b579-08002b30bfeb}
    setlocal
    set path=%path%;%0\..
    set null=2^>nul 1^>nul
    set filename=%~n0
    
    set /p extension=Inserire l'estensione per cui si vuole abilitare la ricerca ^(esempio .abc^) ^? 
    (echo %extension% |findstr /r "^\.[0-9a-z]")%null%|| goto :_ERR
    
    (reg query "HKEY_CLASSES_ROOT\%extension%\PersistentHandler") %null% && goto :_present
    echo Add Filter Handler for %extension%
    REG ADD  "HKEY_CLASSES_ROOT\%extension%\PersistentHandler" /v "" /t REG_SZ /d "{eec97550-47a9-11cf-b952-00aa0051fe20}" /F %null%
    
    goto :_END
    :_present
      echo PersistentHandler for the %extension% key Already present
      echo Do Nothing
    goto :_END
    :_ERR
      echo extension %extension% not correct
    goto :_END
    :_END


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!





    giovedì 8 marzo 2012 00:02
    Moderatore
  • grazie mille della risposta, che implica che con win7 una ricerca di contenuti sicura e veloce non esiste, giusto?

    sono su ssd, abilitare l'indicizzazione è sconsigliabile.

    lo script l'hai scritto su due piedi o lo usi abitualmente? ecco gli errori che leggo

    Inserire l'estensione per cui si vuole abilitare la ricerca (esempio .abc) ? .txt
    PersistentHandler for the .txt key Already present
    Do Nothing

    Inserire l'estensione per cui si vuole abilitare la ricerca (esempio .abc) ? .php
    PersistentHandler for the .php key Already present
    Do Nothing

    giovedì 8 marzo 2012 23:08
  • ciao, ti giro questa risposta data sul technet americano, se lo dicono loro direi che puoi fidarti ed anche secondo me è il metodo migliore.

    http://social.technet.microsoft.com/Forums/en/w7itproui/thread/bfd907b5-b649-48e7-b2a0-feb2f5ec75c7

    ciao.

    A.

    venerdì 9 marzo 2012 20:25
    Moderatore
  • ciao, ti giro questa risposta data sul technet americano, se lo dicono loro direi che puoi fidarti ed anche secondo me è il metodo migliore.

    http://social.technet.microsoft.com/Forums/en/w7itproui/thread/bfd907b5-b649-48e7-b2a0-feb2f5ec75c7

    ciao.

    A.

    Ma prima di fidarsi è meglio capire chi ha scritto, cosa ha scritto e se funziona, essere americani non basta, essere sul forum technet nemmeno! 

    Microsoft Knowledge Base e Documentazione Microsoft prima di tutto, poi il  tutto resto. In questo "resto" valgono le regole di attendibilità delle fonti, riguardo gli argomenti trattati. Se Russinovich rispondesse in un forum di cucina su come fare la "mozzarella in carrozza" potrei anche ridere, se parla di come bypassare le policy di dominio smetto di ridere!  Se Cutler mi parla di ACL, se Kernighan di programmazione, se leggo qualcosa di Tanebaum, Torvald, Babaoglu, Cogswell ... et al.  sicuramente imparo.

    Ho appena letto il 3d e purtroppo per Alessandro il
    "metodo migliore" non funziona!

    L'affermazione è vera solo per i tipi  files che hanno un filtro settato come  PersistentHandler che supporta la ricerca dei contenuti, cosa che Vistaline, l'autore del post marcato come risposta, non era al corrente... Purtroppo anche i post macati come risposta non è detto che siano completi o giusti!!!

    Se sui forum US si trova qualcosa scritto o marcato come risposta da Ed Wilson (dipendente Microsoft e aggiungo "un grande"), Richard Mueller,  Jrv, Shavy Levy, Rich Prescott so che ci si può fidare, di Vistaline poco (sul "cerca" di w7 ne sa meno di me...) e del cinese Robinson Zhang (dipendente microsoft) non so (non noto...).

    Per riprodurre il "mancato funzionamento" di ciò che è riportato come funzionante nel post americano ("metodo migliore"):

    creare una directory c:\temp
    creare un file con una estensione senza filtro associato.

    Per fare ciò si può rimuovere il PersistentHandler dei files es. con estensione .php , andando nel registro in
    HKEY_CLASSES_ROOT\.php\ e cancellando  la chiave "PersistentHandler", oppure, per non toccare il registro,
    si crea un file con un estensione sicuramente sconosciuta es. il file Canali.Gas

    si mette nel file qualche stringa (es. qwe asd ciao cxz ) e poi si prova a cercare, usando la parola magica in americano content:ciao in italiano contenuto:ciao e non troverà alcun file, poi consiglio di leggere anche qui

    Bisogna trovare e installare un filtro che cerchi all'interno dei php perchè il verbo  contenuto: funzioni ! (oppure associare un filtro già esistente che sappia analizzare il contenuto dei txt... e ritorniamo al batch)

    L'idea dello script prende spunto dalla kb di microsoft, non ho inventato nulla ho solo applicato una kb sui filtri di ricerca, concetti che da xp a 7 non sono cambiati ma estesi, es. si può cercare il metatag nei file mp3 o jpg, sempre che si abbiano gli handler giusti; il cerca di windows 7 ed Enterprise Search Server condividono la stessa filosofia di base, filtri specializzati per ogni tipo di file detti ifilter

    Lo script che ho postato in precedenza, non ha dato errore, ha solo segnalato  "PersistentHandler  trovato" quindi "non faccio nulla" era in inglese perchè ho pensato di ripostarlo sul technet americano o provare un blog (ita - eng) sull'argomento.

    Nel caso di Alfredopacino, il computer su cui è stato testato lo script, aveva già un filtro associato ai file con estensione .php quindi non è stato modificato nulla.

    La nuova versione dello script, fa il  backup della chiave e chiede se applicare i cambiamenti in caso di filtro presente:

    @ECHO Off
    cls
    :: set-filter.cmd
    :: Gastone Canali
    :: http://support.microsoft.com/kb/309173 
    :: http://msdn.microsoft.com/en-us/library/windows/desktop/dd940428(v=vs.85).aspx
    :: questo script abilita la ricerca 
    :: del contenuto di un file con una determinata estensione
    :: In Windows 7 deve essere esguito come Amministatore 
    :: {eec97550-47a9-11cf-b952-00aa0051fe20} {5e941d80-bf96-11cd-b579-08002b30bfeb}
    :: Versione 0.3
    setlocal
    set path=%path%;%0\..
    set null=2^>nul 1^>nul
    set filename=%~n0
    set PH={5e941d80-bf96-11cd-b579-08002b30bfeb}
    set /p extension=Inserire l'estensione per cui si vuole abilitare la ricerca ^(esempio .abc^) ^? 
    (echo %extension% |findstr /r "^\.[0-9a-z]")%null%|| goto :_ERR
    
    (reg query "HKEY_CLASSES_ROOT\%extension%\PersistentHandler") %null% && (
       set BK=S
       set SS=N
       set /p BK=PersistentHandler trovato. Vuoi fare il backup della chiave [S,n]^?
       echo %BK% |findstr /I "n" && goto :_noBK
       start /w regedit  /e %0\..\backup%extension%.reg  "HKEY_CLASSES_ROOT\%extension%\PersistentHandler"
       
    :_noBK
       reg query "HKEY_CLASSES_ROOT\%extension%\PersistentHandler"
       set /p SS=Vuoi sovrascrivere la chiave con %PH% [s,N]^?
       echo %SS% |findstr /I "n" && goto :_END
    )
    echo Add Filter Handler for %extension%
    REG ADD  "HKEY_CLASSES_ROOT\%extension%\PersistentHandler" /v "" /t REG_SZ /d "%PH%" /F %null%
    
    goto :_END
    :_ERR
      echo extension %extension% not correct
    goto :_END
    :_END
    Ciao

      


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!









    sabato 10 marzo 2012 00:01
    Moderatore
  • non è un errore è un avviso che ho messo se il filtro è già presente, lo script  non modifca nulla

    PersistentHandler for the .txt key Already present
    Do Nothing

    (La ricerca del contenuto nei .txt dovrebbe funzionare anche senza indicizzazione attiva... verifico e poi ti dico)

    Per  "Abitualmente": NO (ma appena mi arriva il disco SSD...)

    "Scritto su piedi" e 25+ anni che mi occupo di informatica,  pagine lette su ifilter, filtri installati, usati, cercati, esperienze personali, progetti di knowledge management studiati/realizzati etc. 

    Leggi bene la documentazione di microsoft che trovi nel batch, fa prove, non fidarti ne di me, ne di sconosciuti americani, analizza i post in base alla documentazione Microsoft e poi valutane lo spessore!! Non sono abituato a scrivere tanto per fare un post in più, quando scrivo penso di essere di aiuto mettendoci l'eperienza professionale acquisita, se poi arriva qualcuno che è più esperto di me, con idee nuove o diverse, sono contento e continuo ad imparare!

    Aggiungo un po di storia, avevo un .reg (basato sulla kb citata) che mi modificava una quarantina di estensioni, lo avevo preparato (anni fa) per gli sviluppatori di una softwarehouse con cui collaboro, serviva per abilitare la ricerca su XP, nei make file di compilazione, nei progetti di visual  studio e di visual net  etc... con l'arrivo di vista/windows 7 si optò  di indicizzare tutto, aggiungere estensioni etc. etc..

    Con un ssd che non utilizza l'indicizzazione le cose vecchie ritornano alla ribalta! (verifica che il trim sul tuo ssd sia abilitato) 
    Leggendo varie kb e la documentazione di microsoft, ho trovato che i concetti e l'implementazione del "search" di xp, poi di "microsoft search 4" , sono stati trasposti su 7 e in  SSE 2010   , ancora oggi quella KB è  valida ....    


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!




    sabato 10 marzo 2012 00:55
    Moderatore
  • Urca! Quindi tu dici che se posti la
    risposta sul forum americano ti danno 15 punti anche li togliendoli a Vistaline?
    Nel tuo vocabolario la parola CONTRIBUTO non esiste, esiste solo "RISPOSTA
    ESATTA con 10 pagine di spiegazione" tipico atteggiamento da prof universitario.
    Peccato, questo è un forum in cui tutti contribuiscono, ogni tanto la risposta
    puó non essere corretta o può non essere la sola risposta. 

    Se fossi infallibile sarei moderatore del technet nazionale e non
    un misero sistemista, ció implicherebbe avere anche tanto tempo da dedicarci in
    più a leggere, approfondire ogni cosa, cercare la perfezione. Purtroppo (ironico) ho un'azienda da seguire, nessuno
    qui a parte chi lo fa di lavoro o pseudolavoro ne ha di tempo, il fruitore del technet vuole soluzioni veloci e
    mnemonicamente facili al suo problema, io vado ad esperienza sui miei casi e se mi viene l'idea la posto, se non è corretta non verrà segnata come risposta e non prenderò i 10 punti che a te interessano tanto.

    Se vedi anche i moderatori entrano in dettaglio solo se
    necessario, se lo facessero ad ogni post qui rimarrebbero in tre (e chi ha voglia di leggersi 10 pagine di nomi e spiegazioni per una ricerca testo dentro i file??) 

    Se vuoi venire a fare un giretto con me sul furgone ti porto volentieri sul campo a risolvere
    il mondo a script approfonditi da 40 righe l'uno, vediamo quanto e cosa risolvi e chi ci lavora sa di cosa parlo
    e sorriderà, ma naturalmente tu lavorerai da 25 anni sul campo, in università,
    negli Usa e pure sulla luna, ma ribadisco fortemente il mio concetto, dare una soluzione da copia\incolla perchè chi legge non sa neanche cosa sta leggendo per me non serve a nulla perchè chi la legge non se la ricorda e non la fa sua. La prossima volta la ricopia, la incolla e sa che gi risolve il prolema ma va contro quello che un forum come questo dovrebbe fare: formare la persone, non dargli la caramellina "tanto per risolvere".

    Detto questo è l'ultima volta che polemizzo con te, sei la mia nemesi, ma ti consiglio, visto che tempo ne hai evidentemente molto
    di rileggerti le politiche del Technet dove dice che ogni cosa che posti deve
    essere corretta e verità assoluta. Io non l'ho trovata, si vede che i miei punti
    contributo li ho presi sulla fortuna, ma a differenza di te io sono qui per
    imparare, non per insegnare e bacchettare nel mondo reale io e te  saremmo
    durati il tempo di un caffè te l'assicuro, posso sbagliare, sono umano, non per questo smetterò di aiutare ma ti segno la risposta come voto utile contento? Con questo Gas io e te siamo a pari. Non seguiranno polemiche, risposte, confronti, moderami pure quanto vuoi, io di qui non mi muovo finchè aiuto il prossimo anche con 1 solo post su 10.000. Buon lavoro.

    sabato 10 marzo 2012 10:30
    Moderatore
  • Perchè devi dare giudizi superficiali, e poco rispettosi degli altri, se io faccio un post, e mi trovo una replica con questi toni 

    "ciao, ti giro questa risposta data sul technet americano, se lo dicono loro direi che puoi fidarti ed anche secondo me è il metodo migliore."

    Implicitamente dici di non fidarti dei post precedenti e inoltre rincari il tutto dicendo "è il metodo migliore" senza alcun riferimento tecnico ma solo dettato da un giudizio personale NON E' PIACEVOLE.

    Se vuoi venire a fare un giretto con me sul furgone ti porto volentieri sul campo a risolvere
    il mondo a script approfonditi da 40 righe l'uno, vediamo quanto e cosa risolvi e chi ci lavora sa di cosa parlo

    E poi continui denigrare, svaluando le capacità dell'altro,  ma non sei solo tu a fare il sistemista, io 5 giorni alla settimana lavoro sul campo e molti dei miei post sono la notte, in pausa pranzo, il sabato e la domenica !  Se vuoi dare dei giudizi, fallo,  ma limitati agli argomenti dei post! Non dare giudizi ( impliciti,  nessuno qui è stupido!) sul tipo di lavoro o le capacità degli altri, senza nemmeno conoscerli (pensavo di lavorare ed essere un sistemista anch'io ma ora o seri dubbi..)
    E come ti ho risposto altre volte, concludo che, sono senza parole... se la smetti con questi attacchi personali, te ne sarò molto grato.

    Grazie Gastone


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!



    sabato 10 marzo 2012 14:09
    Moderatore
  • Ho anche fatto una segnalazione, perchè si è superato il limite!

    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!

    sabato 10 marzo 2012 14:19
    Moderatore
  • ho visto,  ne sono onorato, il mio primo post rosso! non ho altri mezzi per dirti quello che penso, lo devo fare qui, sono una persona schietta e lo faccio sempre. ti sei presentato molto molto male nei miei confronti, e sei stato tu il primo ad attaccare senza sapere chi ci fosse dall'altra parte, ho il post se vuoi te lo invio. Io queste cose me le lego al dito, lo ammetto, ma esiste una cosa che si chiama rispetto ed il primo che lo viola poi se ne prende le conseguenze. dove posto c'è sempre Gastone che puntualizza, dove rispondo c'è sempre Gastone che specifica, sono stanco anche io in effetti, non sei un moderatore, non ancora. Sto qui per aiutare gli altri non per farmi venire mal di fegato e ripeto non sono infallibile, a volte cerco soluzioni date su technet di altri paesi, sbaglierò a fidarmi anche di quelli, eventualmente niente 10 punti, lo fanno tutti qui, a volte la soluzione non è quella giusta, pazienza. Mi sembra di rispettare tutti e nei 2-3 casi in cui mi sono confrontato con toni accesi con gente che ne sa di più e mi hanno fatto notare che sbagliavo mi sono chiamato fuori dal post, ma se ti presenti tu per primo con saccenza, non puoi pretendere simpatia eterna ed io non sono abituato al poco rispetto. se i moderatori ritengono che sia io in errore mi atterrò al loro volere, posso anche lasciare la community, ma tranquillo, ci saranno altri che non ameranno il tuo modo di porti e di dire le cose. il pensiero che ho su di te non cambia come di te il mio.

    A. 

    sabato 10 marzo 2012 16:28
    Moderatore
  • Ciao a tutti,

    Scusate se devo intromettermi, mi permetto di fare un post in quanto moderatore.

    Vorrei ribadire che in questo spazio in cui ci troviamo ogni aiuto è gradito, ovviamente nei limiti portati dal manifesto del nostro forum. Ci piace l'atteggiamento gentile nei confronti degli altri partecipanti, che non solo ci aiuta a sfruttare al meglio il lato tecnico dello scenario, ma contribuisce anche a momenti di informazione quanto più gradevoli per tutti quanti.

    Mi fido molto della vostra collaborazione per future discussioni, intanto suggerisco ad Alfredo di aprire un nuovo thread nel caso necessitasse ulteriore aiuto.

    Grazie a tutti della disponibilità,


    Anca Popa Follow ForumTechNetIt on Twitter

    La Conferenza Italiana sulla Virtualizzazione

    Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto viene fornito “così come è” e non comporta alcuna responsabilità da parte dell'azienda. 

    lunedì 12 marzo 2012 14:57