I have a folder that contains about 200 zip files. Each zip file contains only one text file in it. I would like to search for a specific string in all the text files in all the zip files. I tried this (which searches for any text file in the zip file that contains the string ORA-)  but it didn't work. zipgrep ORA-1680 *.zipWhat is the correct of doing it without uncompressing the zip files (on a SunOS 5.10 )?
Searching for a string on multiple zip files
grep;search;zip
It is in general not possible to search for content within a compressed file without uncompressing it one way or another.Since zipgrep is only a shellscript, wrapping unzip and egrep itself, you might just as well do it manually:for file in *.zip; do unzip -c $file | grep ORA-1680; doneIf you need just the list of matching zip files, you can use something like:for file in *.zip; do    if ( unzip -c $file | grep -q ORA-1680); then        echo $file    fidoneThis way you are only decompressing to stdout (ie. to memory) instead of decompressing the files to disk. You can of course try to just grep -a the zip files but depending on the content of the file and your pattern, you might get false positives and/or false negatives.