Страница 1 из 1
Перепаковка рамдиска из скрипта. Помогите с скриптом
Добавлено: 27 окт 2012, 16:36
collabiao
Доброго всем дня
Суть проблемы - есть BASH скрипт, работающий из Ubuntu для перепаковки ramdisk (initrd.gz), нужен аналог для Windows
Скрипт использует cpio и gunzip, их версии скомпиленые для Windows (бины, сорцы и доки)
Вот собстно sh скрипт:Код: Выделить всё
#!/usr/bin/sh
#Распаковка
gunzip initrd.gz
cpio -i < initrd
#Здесь происходят изменения распакованых файлов
...
#Запаковка
rm initrd
find . | cpio -o -H newc | gzip > ../initrd.gz
А вот моя наработка для Windows:
Код: Выделить всё
@echo off
@cls
echo.
echo Unpacking...
gunzip initrd.gz
cpio -i < initrd
echo.
echo Done! Now modify some files and press ENTER...
pause > nul
echo Repacking...
rem Вот тут и облом полный т.к. комманды find, находящей все файлы и передающей их следющему [b]cpio -o -H newc[/b] в Windows просто не существует
Прошу вашей помощи, специалисты

Re: Перепаковка рамдиска из скрипта. Помогите с скриптом
Добавлено: 28 окт 2012, 23:02
Raven
Не знаю как насчет win-команд, но что мешает заюзать find из комплекта
cygwin?
Re: Перепаковка рамдиска из скрипта. Помогите с скриптом
Добавлено: 29 окт 2012, 00:32
collabiao
Мешает то, что нужен рабочий вариант скрипта для Windows Server, в которой просто нет возможности установки Cygwin'а
Понимаю, что глупо звучит и проще поставть Ubuntu на виртуальную машину, но нужен именно для Windows, а не Linux и его эмули
Попробую задать вопрос по другому - есть ли вариант "ручного" добавления изменененых файлов в рамдиск с помощью cpio, скажем как это делает обычный архиватор WinRAR:
Или cpio такое не поддерживает?
Re: Перепаковка рамдиска из скрипта. Помогите с скриптом
Добавлено: 29 окт 2012, 01:35
collabiao
Пробую обновить инит в рамдиске, вот так:
dir /b ..\init.rc | ..\tools\cpio -o -H newc | ..\tools\gzip > ../initrd.gz
Но Windows ругается, что что такого файла нет, хотя он есть
..\tools\cpio: init.rc: No such file or directory
1 block