Сьогодні мені довелося видалити перші 1131 байт із змішаного текстового / двійкового файлу потужністю 800 Мб, відфільтрований дамп підривної роботи, який я хакую для нового сховища. Який найкращий спосіб зробити це?
Для початку я спробував
dd bs=1 skip=1131 if=filtered.dump of=trimmed.dump
але після пропуску це копіюється залишок файлу за один раз, тобто дуже повільно. Врешті-решт я опрацював, мені було потрібно 405 байт, щоб округлити це до трьох блоків 512, які я міг пропустити
dd if=/dev/zero of=405zeros bs=1 count=405
cat 405zeros filtered.dump | dd bs=512 skip=3 of=trimmed.dump
який завершився досить швидко, але, мабуть, був простіший / кращий спосіб? Чи є ще один інструмент, про який я забув? Дякую!
dd
є правильним інструментом для роботи - схоже, ви придумали приємне, елегантне рішення вашої проблеми.