Это код, который я использую, чтобы распаковать файл grep с содержимым файлов внутри tar, а затем удалить не связанные файлы. У меня недостаточно места, чтобы распаковать все файлы одновременно.
У меня проблема с для f в `ls | grep -v * .gz строка, которая должна найти файлы, которые вышли из tar и может быть идентифицирована, если у них нет расширения .tar.gz, но, похоже, она их не находит?
Любая помощь будет высоко ценится
M
for i in *.tar.gz;
do echo $i >>outtput1;
tar -xvvzf $i; mv $i ./processed/;
for f in `ls | grep -v *.gz`; ----- this is the line that isn't working
do echo $f >> outtput1;
grep 93149249194 $f >>
outtput1; grep 788 $f >> outtput1;
rm -f $f;
done;
done