GNU/Linux >> Linux Esercitazione >  >> Linux

Come tagliare un file a una determinata dimensione sotto Linux?

Potresti voler usare il comando truncate:

truncate --size=1G test.txt

SIZE può essere specificato come byte, KB, K, MB, M, ecc. Presumo che tu possa calcolare manualmente la dimensione desiderata; in caso contrario, potresti probabilmente utilizzare il comando stat per ottenere informazioni sulla dimensione attuale del file.


perl -we 'open( FILE, "< ./test.txt" ) && truncate( FILE, 8 ) && close(FILE);'

apre il file per la lettura. Tuttavia, per troncare il file è necessario modificarlo, quindi un handle di file di sola lettura non funzionerà. Devi usare la modalità "modifica" ("+>" ).

Come problema secondario, mi stupisce sempre quando le persone lasciano che le chiamate di sistema falliscano silenziosamente e poi chiedono cosa è andato storto. Un essenziale parte della diagnosi di un problema è esaminare il messaggio di errore prodotto; anche se non lo capisci, rende la vita molto più facile a coloro a cui chiedi aiuto.

Quanto segue sarebbe stato un po' più utile:

perl -we 'open(FILE, "<", "./test.txt") or die "open: $!";
          truncate(FILE, 8) or die "truncate: $!";
          close(FILE);'

anche se è vero che ciò avrebbe riportato solo "argomento non valido". Tuttavia, si tratta di informazioni utili e potrebbero averti portato alla conclusione che la modalità aperta era sbagliata (come è successo a me).


Puoi usare tail per tagliare gli ultimi 1000 byte, esempio:

tail -c 1000 file> file2

la -c emette gli ultimi 1000 byte del file, per ulteriori opzioni:

coda di uomo

Per sostituire il file originale con il file appena generato:

mv file2 file


Linux
  1. Come aumentare le dimensioni dello scambio su Ubuntu Linux

  2. Come rinominare un file in Linux?

  3. Come creare un file con una determinata dimensione in Linux?

  4. Come recuperare un file rimosso sotto Linux?

  5. Come ottenere la dimensione fisica di un file in Linux?

Come montare file ISO su Linux

Come usare du Command in Linux

Come usare il comando Tronca in Linux

Come collegare simbolicamente un file in Linux

Come visualizzare la dimensione del file in formato leggibile dall'uomo (KB, MB, GB) nel terminale Linux

Come ottenere le dimensioni di file/cartelle con SSH su Linux?