Normally I would just do something like:
tar -czf archive.tar.gz *.csv
But when there are too many files in the directory for the shell to expand on a single line this doesn't work.
In these cases I would normally resort to using find
. Something like:
find /path -name '*.csv' -exec tar -rf "./archive.tar.gz" {} +;`
But this only seems to work if I don't include the -z
option because you can't append to compressed archives, and using -c
instead of -r
will overwrite the first archive since find runs tar multiple times.
The only other solution I could come up with is to create a .tar file with find
(as above) and then use a second command to compress it. Is there a better way to handle cases like this?
I'm using Ubuntu Linux.
find -name '*.csv'
instead.