Se você tem BSD ou GNU tar, você pode fazer isso:
mkdir -p "$DEST" && wget -O- "$URL" | tar --strip-components 1 -xvzf- -C "$DEST"
Como o tar GNU tem --strip-components
, mas essa não é uma solução padrão. De qualquer forma, você não pode realmente fazer isso com um único pipeline, já que você tem que ter o diretório já, e há maneiras perfeitamente boas de fazer isso se você estiver disposto a desistir de todo o pipeline único de qualquer maneira.
mkdir -p "$DEST" &&
cd "$DEST" &&
wget -O- "$URL" | tar -xvzf-
cd * && # Assumes the result only has one directory
mv * .. # Assumes no dotfiles
Você pode resolver problemas de dotfiles e tars de vários diretórios ajustando esta resposta, se necessário.