You may want to use a shell script instead:
for f in *.gz do zcat "$f" > "other/folder/$(basename "$f" ".gz")" done
Я хотел бы сжать каталог, полный сжатых файлов, и направить вывод (сохраняя исходные файлы) в другой каталог. Мне нужны оригинальные имена, чтобы остаться прежним. Так...
gunzip -c *.gz > file/path/filename
# Search for all .gz in current directory and redirect output here. How do I grab the name of the file found using the wildcard?
Спасибо за помощь
Обновление: финальный скрипт ниже
FILES= /foo/bar/*.gz for gz in $FILES; do echo "unzipping $gz..." 1>&2 fn=$(basename $gz .gz) gunzip -c $gz > /new/foobar/$fn done
You may want to use a shell script instead:
for f in *.gz do zcat "$f" > "other/folder/$(basename "$f" ".gz")" done
With GNU Parallel you can do:
parallel gunzip -c {} '>' /new/foobar/{/.} ::: /foo/bar/*.gz
GNU Parallel takes literally 10 seconds to install:
wget pi.dk/3 -qO - | sh -x
Watch the intro videos to learn more: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1