![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| dont't trovare diritto regex | trekking | Shell scripting e di programmazione | 3 | 05-27-2008 01:20 PM |
| regex prova in bash | subin_bala | Shell scripting e di programmazione | 1 | 04-16-2008 04:27 AM |
| Semplice script bash? | JayC89 | Shell scripting e di programmazione | 16 | 10-02-2007 08:23 PM |
| find-regex: corrispondenza più estensioni | r0sc0 | Shell scripting e di programmazione | 2 | 12-08-2005 02:32 PM |
| comando bash trovare restituito: / usr / bin / trovare: Argomento elenco troppo lungo | yacsil | Shell scripting e di programmazione | 1 | 12-15-2003 06:38 PM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Un semplice trovare e sostituire senza l'uso di espressioni regolari (bash)
Salve,
Ho bisogno di fare una esatta trovare e sostituire (non voglio usare le espressioni regolari, perché l'input proviene da utente). Vorrei trovare una riga che corrisponde l'utente di ingresso del testo e la sostituisce con una stringa vuota. Per esempio, diciamo che l'utente inserisce I love "Unix" e il contenuto del file in cui voglio fare è trovare e sostituire questo: Codice:
I like "Unix" more than DOS I love "Unix" I said I love "Unix" I love "Unix" a lot Unix di utilità che può fare questo? Un esempio potrebbe essere grande! Ho cercato e trovato che sed qualcosa di simile è quello che sto cercando, ma ci vuole una espressione regolare. Dato che la stringa di input è venuta da parte degli utenti, è difficile per me, per generare una espressione regolare per questo. Altri modi? Grazie! |
|
||||
|
man grep
Codice:
read input fgrep -vx "$input" file Non è troppo difficile da generare una vera e propria espressione regolare, di per sé, ma tende ad essere un po 'brutto. Codice:
read input echo "$input" | sed -e 's/[][\\.*^$]/\\&/g; s/.*/s%^&\$%%/' | sed -f - file |
![]() |
| Segnalibri |
| Tag |
| regex, le espressioni regolari |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|