GNU/Linux >> Linux Esercitazione >  >> Linux

dd con obs e seek crea file di dimensioni inaspettate

Il tuo comando dd if=/dev/zero of=./foo count=1 bs=1 obs=9 seek=1 crea un file a due byte anziché un file a 10 byte a causa dell'interazione scarsamente definita tra bs e obs . (Chiamalo un bug del programma, se vuoi, ma probabilmente è meglio definito come un bug della documentazione.) Dovresti usare uno bs o ibs e obs .

Empiricamente sembra che bs sovrascrive obs , quindi ciò che viene eseguito è dd if=/dev/zero of=./foo count=1 bs=1 seek=1 , che crea un file a due byte come hai visto.

Se avessi usato dd if=/dev/zero of=./foo count=1 ibs=1 obs=9 seek=1 avresti ottenuto un file di 10 byte come previsto.

In alternativa, se desideri creare un file vuoto che non occupi spazio dati su disco, puoi utilizzare il nome non intuitivo truncate comando:

truncate --size=10 foo

La manpage POSIX indica:

ibs=espr

Specifica la dimensione del blocco di input, in byte, tramite expr (il valore predefinito è 512).

obs=expr

Specifica la dimensione del blocco di output, in byte, tramite expr (il valore predefinito è 512).

bs=expr

Imposta sia input che output dimensioni del blocco in expr byte, supersedingibs=e obs= . Se non viene specificata alcuna conversione diversa da sync, noerror e nottrunc, ogni blocco di input deve essere copiato nell'output come un singolo blocco senza aggregare blocchi brevi.

dd di Linux funziona allo stesso modo. Pertanto, usa ibs invece:

dd if=/dev/zero of=./foo count=1 ibs=1 obs=9 seek=1

Linux
  1. Riduci le dimensioni del PDF con questo trucco da riga di comando

  2. Registrazione dello schermo in Linux con OBS e Wayland

  3. Trova un file con i comandi Trova e individua in Linux

  4. Preservare i permessi di file e cartelle con rsync

  5. Monta con sshfs e scrivi i permessi dei file

Comando zip e decomprimi Linux con esempi

Spiegazione di Soft Link e Hard Link in Linux con esempi

Manipolazione del testo con sed e grep

Come lavorare con hardlink e softlink in Linux

Come lavorare con File e Shell Provisioner in Vagrant

Gestisci le autorizzazioni di directory e file con chmod Recursive