8e389c03f8
Реализовать двухпанельный Commander от платформенного PoC до этапов P6-P20: EMM-каталог, сортировку и выбор, операции с файлами и деревьями, транзакционное копирование, метаданные, политику конфликтов и предварительную проверку свободного места. Добавить проектную документацию, HDD/MAME-сценарии и проверенные артефакты. Расширить libc операцией bank_write_page, исправлением режима O_RDONLY и связанными регрессионными проверками.
25 lines
777 B
Bash
Executable File
25 lines
777 B
Bash
Executable File
#!/bin/sh
|
|
# Извлекает обе стороны группового F5 и сравнивает их побайтно.
|
|
|
|
set -eu
|
|
|
|
PROJECT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
|
|
IMAGE=${1:-$PROJECT_DIR/build/hdd/p12_group_copy.chd}
|
|
TEMP_DIR=$(mktemp -d "${TMPDIR:-/tmp}/sprcmd-group-copy-check.XXXXXX")
|
|
RAW="$TEMP_DIR/p12_group_copy.raw"
|
|
MTC="$TEMP_DIR/mtools.conf"
|
|
EXTRACTED="$TEMP_DIR/extracted"
|
|
|
|
cleanup()
|
|
{
|
|
rm -rf -- "$TEMP_DIR"
|
|
}
|
|
trap cleanup EXIT HUP INT TERM
|
|
|
|
chdman extractraw -i "$IMAGE" -o "$RAW" -f >/dev/null
|
|
printf 'drive z: file="%s" partition=1\n' "$RAW" > "$MTC"
|
|
export MTOOLSRC="$MTC" MTOOLS_SKIP_CHECK=1
|
|
mkdir "$EXTRACTED"
|
|
mcopy -s z:/GRSRC z:/GRDST "$EXTRACTED/"
|
|
python3 "$PROJECT_DIR/tests/p12_group_copy_fixture.py" verify "$EXTRACTED"
|