Mi stavo chiedendo quale comando ho bisogno di mettere nel terminale di leggere un file di testo, eliminare tutte le righe che non contengono una determinata parola chiave, e quindi stampare quelle linee su un nuovo file. ad esempio, la parola chiave è "sistema". Voglio essere in grado di stampare tutte le linee che contengono il sistema su un nuovo file separato. GrazieComando terminale per trovare le linee contenenti una parola specifica?
risposta
grep
è tuo amico.
Ad esempio, si può fare:
grep system <filename> > systemlines.out
uomo grep e si possono ottenere ulteriori informazioni utili come bene (es: numeri di riga, 1+ linee prima, 1 + righe dopo, negazione - vale a dire: tutto linee che non contengono grep, ecc ...)
Se si utilizza Windows, è possibile installare cygwin oppure è possibile trovare anche un binario win32 per grep.
grep "sistema" filename> new-filename
Si potrebbe desiderare di renderlo un po 'più intelligente di non includere linee con parole come "dysystemic", ma è un buon punto di partenza.
Si noti che l'opzione '-w' di grep costringerà l'espressione di ricerca di essere un "intera parola", cioè, delimitata da spazi bianchi (tra cui l'inizio e la fine della linea). – ghoti
sotto grep comando risolverà il problema ur
grep -i yourword filename1 > filename2
with -i for case insensitiveness
without -i for case sensitiveness
per imparare come funziona grep ur del server, fare riferimento alla pagina man on ur del server con il seguente comando
man grep
grep '\<system\>'
cercherà per le linee che contengono la parola sistema , e non sistema come una stringa.
Anche questo ha aiutato! – willykao
- 1. Come trovare le linee contenenti una stringa in linux
- 2. regex per trovare file contenenti una parola ma non un'altra
- 3. Python regex per abbinare una parola specifica
- 4. Serve aiuto RegExp per Linux Comando grep Bash per filtrare le linee contenenti parentesi quadre
- 5. numero di linee in uscita terminale
- 6. Regex abbinare una linea senza una specifica parola
- 7. XSLT Seleziona tutti i nodi contenenti una sottostringa specifica
- 8. Rimuovere una parola specifica da una stringa
- 9. comando grep like per trovare linee di corrispondenza più linee di quartiere
- 10. come trovare i file contenenti una stringa utilizzando egrep
- 11. Impossibile trovare una specifica per `Firebase`
- 12. Espressione regolare di una parola specifica
- 13. PostgreSQL comando terminale psql
- 14. Come negare una parola specifica nell'espressione regolare?
- 15. algoritmo per trovare le linee di bracketing un certo punto
- 16. Per verificare se la stringa contiene una parola specifica
- 17. C# cerca file di testo, restituisce tutte le righe contenenti una parola
- 18. comando terminale per importazione file mysql
- 19. Script SQL per trovare chiavi esterne a una tabella specifica?
- 20. Impossibile trovare una specifica in CocoaPods
- 21. Cocoapods: impossibile trovare una specifica per [PrivateSpec] dipendente da [PrivateClientSpec]
- 22. come trovare il codice chiave per una chiave specifica
- 23. Comando 'findstr' di Windows: Escludi risultati contenenti una stringa particolare
- 24. Sostituire parola specifica in contenteditable
- 25. spostare le linee da una finestra all'altra
- 26. Visualizza tutti i nomi dei database contenenti la tabella specifica
- 27. Come trovare linee duplicate su 2 file diversi? Unix
- 28. Sostituisci una parola specifica tra i caratteri usando sed?
- 29. Git: rimuovere il comando positivo/negativo dalle linee in diff
- 30. Colonna specifica partita con comando grep
ricordare per impostazione predefinita grep è case sensitive –
è possibile utilizzare 'grep -i' per renderlo case insensitive, ma non credo che era un requisito. –