-cvzpf is not the default behavior for at least the following reasons.
- -c specifies creating an archive, it is at least equally likely
that one will want to extract an archive or view the contents of an
- -v specifies verbose operations, some people don't want to
- -p this is irrelevant for creating archives.
- -f in case the user wants to pipe the output to a different device/program instead of a file (or to the default tape device in traditional Unices).
Regarding why it is not how you suggest it should be, it is historic reasons dealing with its use with tape drives and the original authors coding.
Regarding making that the default behavior, you could create an alias however, you would need a separate one for extracting files.
A separate way to change the default options with the GNU implementation of
tar is by setting the
TAR_OPTIONS environment variable. Though I have found that it does not like it when you try to specify -f as one of the options.
Note that while you can set the options, this will cause an error if you pass tar a conflicting option. For instance, if you have TAR_OPTIONS set as above and you try to extract an archive, you will get the following error.
tar: You may not specify more than one `-Acdtrux' or `--test-label' option
Try `tar --help' or `tar --usage' for more information.