Strings (Unix)strings è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX[1] e GNU[2], che legge i dati di uno o più file, o i dati provenienti dallo standard input, ricercando in essi delle sequenze di byte rappresentanti valide stringhe di caratteri visibili, e le visualizza sullo standard output, una linea per ciascuna stringa trovata, opzionalmente indicando anche l'offset a cui la stringa è stata trovata. Il funzionamento si basa sul fatto che solo alcune delle sequenze di byte presenti in un flusso di dati possono rappresentare anche delle valide stringhe di caratteri secondo la codifica di caratteri in uso. Il comportamento predefinito prevede di ricercare stringhe composte da almeno 4 caratteri, e di considerare solo le porzioni dei dati ritenute rilevanti (ad esempio, nel caso di file eseguibili nel formato nativo del sistema, sono normalmente prese in considerazione solo le sezioni contenenti i dati del programma, e non quelli contenenti ad esempio le istruzioni). SintassiLa sintassi generale del comando strings è la seguente: strings [opzioni] [--] [file1 …] I parametri facoltativi file specificano i nomi dei file da cui leggere i dati. Se non sono specificati, o se è un trattino (-), strings legge i dati provenienti dallo standard input. Il doppio trattino -- (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni. OpzioniTra le opzioni principali vi sono:
EsempiMostra le stringhe nelle sole sezioni considerate rilevanti del file /bin/ls: strings /bin/ls Mostra le stringhe di almeno 6 caratteri del file /tmp/dati.dat, indicando anche l'offset in forma esadecimale: strings -a -n 6 -t x /tmp/dati.dat Note |