GNU/Linux >> Linux Esercitazione >  >> Debian

Debian – Cerca gli ultimi file modificati negli ultimi 2 minuti nella tua home directory che contengono una determinata stringa?

Sto cercando file nella mia home directory che sono stati modificati negli ultimi due minuti che contengono anche una determinata stringa. Ho provato con questo comando:

 find -type d -mmin -2 -ls | grep -Ril "mystring" 

Sembra funzionare ma a quanto pare stampa solo quei file con la stringa data all'interno piuttosto che i file modificati l'ultima volta 2 minuti fa che contengono la stringa. Sembra che la prima parte del comando non sia stata eseguita.

Risposta accettata:

Hai fatto un buon tentativo con il tuo suggerimento

find -type d -mmin -2 -ls | grep -Ril "mystring"

Questo avrebbe identificato le directory (-type d ) che erano stati modificati negli ultimi due minuti anziché i file (-type f ). Piping dell'output di -ls a grep di solito avrebbe cercato mystring nei nomi dei file generati . Tuttavia, in questo caso il -R flag cambia il comportamento di grep e ignora il tuo elenco di nomi di file, cercando invece in tutti i file nella directory corrente e al di sotto.

Quindi, dividiamo il problema in due parti

  1. Cerca gli ultimi file modificati negli ultimi 2 minuti nella tua home directory

    find ~ -type f -mmin -2
    
  2. [File] che contengono una determinata stringa

    grep -Fl 'certain String' {files...}
    

Ora devi metterli insieme. Il {} è un segnaposto per i nomi di file generati da find dal passaggio 1 e il + finale indica che il {} può essere ripetuto più volte , ovvero diversi nomi di file

    find ~ -type f -mmin -2 -exec grep -Fl 'certain String' {} +

Modifica del grep su echo grep ti mostrerà cosa viene eseguito da find comando; questa può essere un'utile tecnica di debug:

    find ~ -type f -mmin -2 -exec echo grep -Fl 'certain String' {} +

Si prega di considerare l'esecuzione di man find e man grep per scoprire quali sono le varie opzioni, come il -F e -l in grep -Fl , altrimenti non stai imparando nulla dall'esercizio che ti è stato impostato; stai solo copiando una risposta.


Debian
  1. Trovare file per i quali più varianti su quel nome file esistono insieme nella stessa directory?

  2. Spostare solo gli ultimi 8 file di una directory in un'altra directory?

  3. Directory .misteriose nella directory principale?

  4. linux:cerca i file di tipo *.php recentemente modificati

  5. Come posso utilizzare grep per cercare nella directory corrente tutti i file con la stringa hello ma visualizzare solo i file .h e .cc?

Come cercare file o directory con il comando Trova in Linux

Quale strumento di backup è il migliore per Debian 11?

Come trovare file in Debian 10

Come cercare file dalla riga di comando di Linux

Come trovare i file che non contengono una determinata stringa di ricerca

Come cercare una parola nell'intero contenuto di una directory in Linux