Я думаю, что он имел в виду + $ ((1024 * 1024)): -c, --bytes = K вывести последние K байтов; в качестве альтернативы используйте -c + K для вывода байтов, начиная с Kth каждого файла
Vanuan
5
дд - помощь
Использование: dd [OPERAND] ...
или: ДД ОПЦИЯ
Скопируйте файл, конвертируя и форматируя в соответствии с операндами.
bs = BYTES чтение и запись байтов BYT за раз (см. также ibs =, obs =)
cbs = BYTES конвертировать байты за раз
conv = CONVS преобразовать файл в соответствии с разделенным запятыми списком символов
count = BLOCKS копировать только блоки ввода BLOCKS
ibs = BYTES читает байты за раз (по умолчанию: 512)
if = FILE читать из FILE вместо стандартного ввода
iflag = FLAGS читается согласно списку символов через запятую
obs = BYTES записывают байты за раз (по умолчанию: 512)
из = FILE записывать в FILE вместо stdout
oflag = FLAGS записывать в соответствии с разделенным запятыми списком символов
seek = BLOCKS пропускать блоки BLOBKS obs-size в начале вывода
skip = BLOCKS пропустить блоки BLOBKS ibs-size в начале ввода
status = noxfer подавить статистику передачи
За блоками и байтами могут следовать следующие мультипликативные суффиксы:
c = 1, w = 2, b = 512, кБ = 1000, K = 1024, МБ = 1000 * 1000, M = 1024 * 1024, xM = M
GB = 1000 * 1000 * 1000, G = 1024 * 1024 * 1024 и т. Д. Для T, P, E, Z, Y.
Если размер файла составляет ровно 10 МБ, 1024 * 10 10240 КБ Это оставит последние 1024 КБ. Вы должны указать размер блока, с которым вы работаете, используя опции ibs и obs.
Используя опцию поиска, вы можете записать конкретное место в вашем выходном файле. Скажем, вы хотите оставить первые 1 МБ и перепишите последние 8 МБ.
Вам, вероятно, нужно получить некоторые данные о размере вашего файла, чтобы убедиться, что вы получаете правильный объем данных в и из.
ls -s --block-size 1K ./my/10MB/file
человек лс
--block размер = РАЗМЕР
использовать SIZE-байтовые блоки. Смотрите формат РАЗМЕРА ниже
-s, --size
распечатать выделенный размер каждого файла в блоках
SIZE может быть (или может быть целым числом, за которым следует) один из следующих
понижение: KB 1000, K 1024, MB 1000 * 1000, M 1024 * 1024 и т. д. для G, T,
P, E, Z, Y.
Ответы:
Ну, если у вас есть
stat
иbash
, вы можете получить размер файла с помощью:Если вы хотите извлечь последние
$amount
байты для этого файлаdd
, вы можете:Но более разумный подход заключается в использовании
tail
:источник
-c
варианта дляhead
?Если размер файла составляет ровно 10 МБ, 1024 * 10 10240 КБ Это оставит последние 1024 КБ. Вы должны указать размер блока, с которым вы работаете, используя опции ibs и obs.
Вы также можете пропустить первые 1 МБ файла, используя опцию пропуска, чтобы прочитать до конца файла, пропуская первые 1 МБ.
Используя опцию поиска, вы можете записать конкретное место в вашем выходном файле. Скажем, вы хотите оставить первые 1 МБ и перепишите последние 8 МБ.
Вам, вероятно, нужно получить некоторые данные о размере вашего файла, чтобы убедиться, что вы получаете правильный объем данных в и из.
источник