Я бы сделал это за два вызова find
:
zip
, а затем обрабатывать их Это немного громоздко, сложная часть - это вызов awk
. Он обрабатывает вывод команды unzip -l
, что не очень удобно для сценариев. Он ищет строки, начинающиеся с цифр (чтобы избавиться от заголовков), избавляется от пустых строк и, наконец, сопоставляет .process
без учета регистра.
FINDDIR="."
for f in `find "$FINDDIR" -type f -iname '*.zip'`; do
dir=`dirname "$f"`
for p in `unzip -l sth.zip | awk '{if (match($1, /^[0-9]+$/) && $1 > 0 && match(tolower($4), /\.processed$/)) print $4}'`; do
echo "$dir/$p"
done
find "$FINDDIR" -type f -iname '*.processed'
Это не может иметь дело с рекурсивными zip
s, т. Е. Если zip-архив находится внутри другого zip-архива.
Не делайте этого — краткий ответ.:RAID0 хуже, чем полное отсутствие RAID с точки зрения надежности.
Длинный ответ, что делать:
Загрузите Windows в режиме командной строки с помощью среды восстановления и удалите массив RAID с исправленным RSTCLI64:
rstcli64 --manage --delete OEMRAID0