GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa fa considerare Grep un file come binario?

Ho alcuni dump di database da un sistema Windows sulla mia scatola. Sono file di testo. Sto usando cygwin per esplorarli. Questi sembrano essere file di testo normale; Li apro con editor di testo come blocco note e wordpad e sembrano leggibili. Tuttavia, quando eseguo grep su di essi, dirà binary file foo.txt matches .

Ho notato che i file contengono alcuni ascii NUL personaggi, che credo siano artefatti dal dump del database.

Quindi cosa fa considerare grep questi file come binari? Il NUL carattere? C'è un flag sul filesystem? Cosa devo cambiare per ottenere grep per mostrarmi le corrispondenze di linea?

Risposta accettata:

Se è presente un NUL carattere ovunque nel file, grep lo considererà come un file binario.

Potrebbe esserci una soluzione alternativa come questo cat file | tr -d '

Linux
  1. Come rimuovere i "dati binari" da un file di testo (ad es. Bash_history)?

  2. Che cos'è il protocollo FTP (File Transfer Protocol)

  3. grep un elenco di grandi dimensioni su un file di grandi dimensioni

  4. Come grep \n nel file

  5. Reindirizza la traccia al file

Cos'è umask in Linux?

Che cos'è il file .bashrc in Linux?

Cos'è un file .sh?

Come sopprimere i risultati della corrispondenza dei file binari in grep

Cos'è un file .so?

Cosa potrebbe far sì che il comando file in Linux riporti un file di testo come dati binari?