FILE_GRP = a1.bin a2.bin b.bin ccc.bin
FILE_BAS = a_bas.bin
FILE_GET_LEN = 256
FILE_ALL_TARGET = a_all.bin
输出:
======= (0)
a_all.bin (first 256 remain)
=======(256)
a1.bin (olny 前256字节)
=======(512)
a2.bin (olny 前256字节)
=======(768)
.... 后续依次
#cat FILE_GRP to FILE_BAS,each file get it's first FILE_GET_LEN
FILE_GRP = a1.bin a2.bin b.bin ccc.bin
FILE_BAS = a_bas.bin
FILE_GET_LEN = 256
FILE_ALL_TARGET = a_all.bin
all:
cp $(FILE_BAS) $(FILE_ALL_TARGET)
for tmp_file in $(FILE_GRP);do \
dd if=$$tmp_file of=$$tmp_file.bin.tmp bs=$(FILE_GET_LEN) count=1 1>/dev/null;\
cat $$tmp_file.bin.tmp>>file_all.bin.tmp;\
done
#only replace cat of FILE_GRP total size
dd if=file_all.bin.tmp of=$(FILE_ALL_TARGET) bs=$(FILE_GET_LEN) count=$(words $(FILE_GRP)) seek=1 conv=notrunc
rm *.bin.tmp