for each dir create a tar file

The script that you wrote will not work if you have some spaces in a directory name, because the name will be split, and also it will tar files if they exist on this level.

You can use this command to list directories not recursively:

find . -maxdepth 1 -mindepth 1 -type d

and this one to perform a tar on each one:

find . -maxdepth 1 -mindepth 1 -type d -exec tar cvf {}.tar {}  \;

Leave a Comment