Skip to content

straighten out GTAR use in aliases/macros #68

Description

@tomasohara

When GTAR=gtar there are problems with the view-tar macro:

$ cmd-trace view-tar ~/Downloads/mlflow-2.9.2.tar.gz | head
start: Mon Aug 19 11:33:38 CDT 2024
+ eval 'view-tar /home/joe/Downloads/mlflow-2.9.2.tar.gz'
++ view-tar /home/joe/Downloads/mlflow-2.9.2.tar.gz
++ gtar tvfz /home/joe/Downloads/mlflow-2.9.2.tar.gz
++ less
++ gtar
++ gtar
++ gtar
++ gtar
++ gtar

It is OK when GTAR="command gtar":

$ GTAR="command gtar" cmd-trace view-tar ~/Downloads/mlflow-2.9.2.tar.gz | head
start: Mon Aug 19 11:34:30 CDT 2024
+ eval 'view-tar /home/joe/Downloads/mlflow-2.9.2.tar.gz'
++ view-tar /home/joe/Downloads/mlflow-2.9.2.tar.gz
++ command gtar tvfz /home/joe/Downloads/mlflow-2.9.2.tar.gz
++ less
drwxr-xr-x ubuntu/ubuntu     0 2023-12-13 23:30 mlflow-2.9.2/
-rw-r--r-- ubuntu/ubuntu 11382 2023-12-13 23:26 mlflow-2.9.2/LICENSE.txt
-rw-r--r-- ubuntu/ubuntu   608 2023-12-13 23:26 mlflow-2.9.2/MANIFEST.in
-rw-r--r-- ubuntu/ubuntu 10932 2023-12-13 23:30 mlflow-2.9.2/PKG-INFO
-rw-r--r-- ubuntu/ubuntu 10160 2023-12-13 23:26 mlflow-2.9.2/README.rst

Here's the macro definitions:

GTAR="tar"
if [ "$(which gtar)" != "" ]; then
    GTAR="gtar"
fi
if [[ ! $($GTAR --version) =~ GNU ]]; then
    echo "Warning: GNU tar not available" 1>&2
fi
function gtar { $GTAR; }
...
function view-tar () { $GTAR "t${GTAR_OPTS}" "$@" 2>&1 | $PAGER; }

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions