История изменений
Исправление bormant, (текущая версия) :
что я должен тут понять? Какой входной блок, до какого размера, какой ibs, зачем эти нулевые байты нужны.
dd
1) читает из источника (который указан в if= или из стандартного ввода) ibs байт (если не указано явно bs или ibs, то 512),
2) пишет в приёмник (который указан в of= или в стандартный вывод) obs байт (если не указано явно bs или obs, то 512),
3) повторяет (1) и (2), пока не кончится источник.
Если возникнет ошибка, то при conv=error (умолчание), процесс прервется. Например, B — сбойные участки:
источник: 1 B 3 B 5
приёмник: 1
Если указано conv=noerror, то не прервется, но сбойный блок в приёмник записан не будет. Это приведет к смещению хвоста (и нарушению структуры файла приёмника, если таковая в нём была). Например, B — сбойные участки:
источник: 1 B 3 B 5
приёмник: 1 3 5
Если указать conv=noerror,sync, то выходные блоки будут дополнены нулевыми байтами, что позволит сохранить положение исходных блоков источника в приёмнике. Например, B — сбойные участки, 0 — «нулевые» участки:
источник: 1 B 3 B 5
приёмник: 1 0 3 0 5
Если указан count=столько, то читать указанное количество блоков, а не весь входной поток.
Исходная версия bormant, :
что я должен тут понять? Какой входной блок, до какого размера, какой ibs, зачем эти нулевые байты нужны.
dd
1) читает из источника (который указан в if= или из стандартного ввода) ibs байт (если не указано явно bs или ibs, то 512),
2) пишет в приёмник (который указан в of= или в стандартный вывод) obs байт (если не указано явно bs или obs, то 512),
3) повторяет (1) и (2), пока не кончится источник.
Если возникнет ошибка, то при conv=error (умолчание), процесс прервется. Например, B — сбойные участки:
источник: 1 B 3 B 5
приёмник: 1
Если указано conv=noerror, то не прервется, но сбойный блок в приёмник записан не будет. Это приведет к смещению хвоста (и нарушению структуры файла приёмника, если таковая в нём была). Например, B — сбойные участки:
источник: 1 B 3 B 5
приёмник: 1 3 5
Если указать conv=noerror,sync, то выходные блоки будут дополнены нулевыми байтами, что позволит сохранить положение исходных блоков источника в приёмнике. Например, B — сбойные участки, 0 — «нулевые» участки:
источник: 1 B 3 B 5
приёмник: 1 0 3 0 5