Здесь можно использовать строки и последовательность команд:
(gzip <<<""; cat input.xml.gz; gzip <<<" ") > newfile.gz
Здесь строки описаны в Что означает и в руководстве Bash .
Измените /path/to/gz-files
и mobilenumber
на фактические значения.
cd /path/to/gz-files
for file in *; do
printf 'Scanning %s\n' "$file"
zcat "$file" | grep mobilenumber
done
Сначала проверьте типы файлов, а затем выполните поиск по grep
илиzgrep
$ file logs.gz
logs.gz: gzip compressed data
$ zgrep -H "999999999" *.gz
Для текста ascii
$ file logs.dat
logs.dat: ASCII text
$ grep -H "999999999" *.dat