Помимо ответов для получения физического отступа, вы также можете оставить большую часть пространства дополнения в файле просто пустым («дыры»), seek
перейдя в новую конечную позицию файла и написав один символ:
dd if=/dev/zero of=largerfile.txt bs=1 count=1 seek=16777215
(который имеет преимущество в том, что он гораздо более производительный, особенно с ним bs=1
, и не занимает много дополнительного дискового пространства).
Этот метод работает даже без добавления каких-либо символов, используя if=/dev/null
конечный желаемый размер файла:
dd if=/dev/null of=largerfile.txt bs=1 count=1 seek=16777216
Производительный вариант решения с физическим заполнением, которое использует блоки большего размера:
padding=262144 bs=32768 nblocks=$((padding/bs)) rest=$((padding%bs))
{
dd if=/dev/zero bs=$bs count=$nblocks
dd if=/dev/zero bs=$rest count=1
} 2>/dev/null >>largerfile.txt
bs=1
вdd
моем опыте очень дорогой.