Не все дистрибутивы linux используют одинаковые init-скрипты. Даже в тех дистрибутивах, которые якобы используют систему SysV init, есть функции оболочки, специфичные для конкретного дистрибутива.
Кроме того, в raspbian есть пакет 'hostapd', который включает скрипт инициализации hostapd, возможно, это то, что вам следует использовать в любом случае.
Не существует «простой» команды, так как unzip изначально не предлагает эту функциональность. Вы должны попросить его извлечь некоторые или все файлы и обработать их самостоятельно. Вот еще один способ:
zipinfo -1 Ten.zip | while IFS= read -r filename
do
unzip -p Ten.zip "$filename" | sed 2q
done
Разница здесь в том, чтобы использовать zipinfo
для вывода списка содержимого архива, по одному в строке; затем мы читаем эти имена файлов строка за строкой и просим unzip
извлечь этот файл на экран (с помощью -p
, чтобы имя файла не печаталось ), а затем передать это через sed
. ], чтобы он печатал (по умолчанию ), выходя на строке 2.
Это может завершиться ошибкой, если у вас есть заархивированные файлы с символами новой строки в их имени; вы бы этого не сделали, потому что unzip искажает имя файла при извлечении:
$ touch file$'\n'name
$ zip foo.zip file*name
$ rm file*name
$ zipinfo -1 foo.zip
file^Jname
$ unzip foo.zip
Archive: foo.zip
extracting: filename
$ ls -lrt
...
filename