Comando split
Finalità
Divide un file in parti.
Sintassi
Per suddividere un file in più file contenenti il numero specificato di righe
split [ -l LineCount ] [ -a SuffixLength ] [ File [ Prefisso ]]
Per suddividere un file in più file che contengono un numero specificato di byte
split -b Numero [ k | m ] [ -a SuffixLength ] [ File [ Prefisso ]]
Descrizione
Il comando split legge il file specificato e lo scrive in parti di 1000 righe in una serie di file di output. Il nome del primo file di output viene creato combinando il prefisso specificato (x per impostazione predefinita) con il suffisso aa , il secondo combinando il prefisso con il suffisso ab , e così via lessicograficamente tramite zz (un massimo di 676 file). Il numero di lettere nel suffisso, e di conseguenza il numero di file del nome di output, può essere aumentato utilizzando l'indicatore -a .
Non è possibile specificare un Prefisso più lungo di PATH_MAX - 2 byte (o PATH_MAX - SuffixLength byte se viene specificato l'indicatore -a ). La variabile PATH_MAX specifica la lunghezza massima del nome percorso per il sistema, come definito nel file /usr/include/sys/limits.h .
Se non si specifica un file di input o se si specifica un nome file di - (segno meno), il comando split legge l'input standard.
Il comando split può essere utilizzato con qualsiasi file binario o di testo regolare. Una volta suddiviso un file, è possibile ripristinarlo al formato originale utilizzando il comando cat e i frammenti di file verranno elencati nell'ordine appropriato.
Indicatori
Nota: gli indicatori -b e -l si escludono reciprocamente.
| Elemento | Descrizione |
|---|---|
| -a SuffixLength | Specifica il numero di lettere da utilizzare per formare la parte suffisso dei file del nome di emissione. Il numero di lettere determina il numero di possibili combinazioni di nomi file di output. Il valore predefinito è due lettere. |
| -b Numero | Suddivide il file nel numero di byte specificato dalla variabile Numero . Aggiungendo i moltiplicatori k (kilobyte) o m (megabyte) alla fine del valore Numero , il file viene suddiviso rispettivamente in Numero* 1024 o Numero* 1.048.576 byte. |
| -l LineCount | Specifica il numero di righe in ogni file di output. Il valore predefinito è 1000 righe. |
Stato uscita
Questo comando restituisce i seguenti valori di uscita:
| Elemento | Descrizione |
|---|---|
| 0 | Il comando è stato eseguito correttamente. |
| > 0 | Si è verificato un errore. |
Esempi
- Per suddividere un file in segmenti di 1000 righe, immettere:
Questo esempio suddividebookin segmenti di 1000 linee denominatixaa, xab, xac, e così via.split book - Per dividere un file in segmenti di 50 righe e specificare il prefisso del nome file, immettere:
Questo esempio suddividebookin segmenti di 50 linee denominatisectaa,sectab,sectac, e così via.split -l 50 book sect - Per suddividere un file in segmenti 2KB , immettere:
Questo esempio suddivide il libro in segmenti da 2 * 1024 byte denominatixaa,xab,xac, e così via.split -b 2k book - Per dividere un file in più di 676 segmenti, immettere:
Questo esempio suddivide un libro in segmenti di 5 linee denominatisectaaa,sectaab,sectaac, e così via, fino asectzzz(un massimo di 17.576 file).split -l 5 -a 3 book sect
File
| Elemento | Descrizione |
|---|---|
| /usr/bin/split | Contiene il comando split . |