Qualche app per OS X semplifica la ricerca e la sostituzione su più file?


9

Sto cercando uno strumento OS X che mi permetta di cercare e sostituire una stringa di ricerca in più file. I requisiti sono i seguenti:

  • Cerca e sostituisci
  • Cerca per espressione regolare
  • Cerca tra più file
  • Cerca tra le strutture di directory nidificate
  • Sostituisci espressione può utilizzare i valori della ricerca (espressione regolare)
  • Lo strumento ha un'interfaccia utente facile da usare
  • Preferibilmente gratuito

So che alcuni editor di testo come BBEdit hanno questa funzionalità, ma preferirei uno strumento leggero che non mi richieda di aprire prima i file per la modifica.

Se non ci sono strumenti per soddisfare questi requisiti, prenderei anche in considerazione un'alternativa alla riga di comando. Lo so perle sedsostengo qualcosa del genere - una soluzione che posso definire come alias o funzione di Bash sarebbe benvenuta in questo caso.

Risposte:


9

In genere uso TextMate :

Finestra di dialogo Cerca e sostituisci TextMate

TextMate (1) è / era un prodotto acquistato, ma TextMate 2 è attualmente in fase di sviluppo openSource attivo su gitHub ed è gratuito.


5

Il testo sublime è quello che uso, è fantastico!

screenshot di trova e sostituisci

Testo sublime:

  • è libero di valutare (nessun limite di tempo imposto)
  • può cercare e sostituire
  • può cercare per espressione regolare
  • può cercare tra più file
  • può cercare tra le strutture di directory nidificate
  • può utilizzare i valori della ricerca nell'espressione di sostituzione
  • ha un'interfaccia utente facile da usare

1
Puoi per favore essere un po 'più specifico e descrivere come SublimeText risolve il problema descritto nella domanda?
Nohillside

Il loro sito Web (il link fornito ti dice tutto) ma ... È libero di valutare (nessun limite di tempo imposto) Cerca e sostituisci - SÌ. Ricerca per espressione regolare - SÌ. Cerca tra più file - SÌ. Cerca tra le strutture di directory nidificate - SÌ. Sostituisci espressione può utilizzare i valori della ricerca (espressione regolare) - SÌ. Lo strumento ha un'interfaccia utente facile da usare - SÌ. Preferibilmente gratis - SÌ (sorta di).
Mike,

3

Non è necessario aprire i file con BBEdit. Basta puntarlo su una cartella. È uno strumento molto potente, che ho usato spesso con un gran numero di file HTML.


3

Oltre alle altre soluzioni che utilizzano un editor di testo, ho trovato FAR - Find and Replace , uno strumento di ricerca e sostituzione multipiattaforma. Non è il più bello, ma sembra che faccia quello che sto cercando.

http://findandreplace.sourceforge.net/


2

Uso spesso gli script di Ruby in questo modo:

Dir["**/*.txt"].each { |f|
  IO.write(f, IO.read(f).gsub(/search/, "replace"))
}

Oppure puoi usare gets(nil)con -i:

ruby -i -e 'print gets(nil).gsub(/search/, "replace")' *.txt

Se installi Bash 4 e abiliti globstar, puoi utilizzare anche **nelle shell:

sed -i '' 's/search/replace/g' **/*.txt

1

Questo è esattamente sedstato scritto e soddisfa tutti i tuoi requisiti, tranne che la curva di apprendimento è un po 'ripida.

Per una curva di apprendimento più delicata, prova TextWrangler di BareBones. Utilizza il motore di testo BBEdit e, credo, ha la piena funzionalità di ricerca e sostituzione del fratello maggiore


1
Conosco un po 'di programmazione e scripting bash, ma non ho mai fatto nulla di avanzato sed. Puoi fornire un esempio su come utilizzare sedper sostituire il testo in una serie di file, come nella rubyrisposta (attualmente) sopra ?
nwinkler,

-1

Dai un'occhiata alla mia Ricerca app e sostituisci . Puoi usarlo su più file o directory, proteggere la ricerca / sostituire stringhe e puoi usare espressioni regolari.


Come funziona - perché è meglio di altre risposte - si prega di fornire più di un link
user151019

1
Ciao e benvenuto a Ask Different! Sebbene non ci dispiaccia che gli sviluppatori raccomandino i loro prodotti quando risolvono i problemi che vengono presentati, ti chiediamo di fornire un contesto chiaro sul perché il tuo prodotto è una risposta e su come risolve il problema. Per ulteriori informazioni sul funzionamento di Ask Different e sul formato di domande e risposte StackExchange, consultare le domande frequenti .
Ian C.

Immagino che abbia circa le stesse caratteristiche degli altri strumenti consigliati qui. La differenza è che hai una GUI e puoi salvare i file contenenti le stringhe di ricerca / sostituzione. Ha tutte le funzionalità richieste da nwinkler. Può cercare e sostituire (anche usando espressioni regolari) tra più file / strutture di directory nidificate e ha (almeno è quello che penso) una GUI facile da usare.
thomasguenzel,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.