Não. Em vez disso, obtenha tar para colocar o conteúdo em um diretório de sua escolha.
-
tar
pode remover os componentes n do caminho de cada arquivo (--strip-components
) -
tar
pode aplicar expressões arbitrárias de sed para alterar o caminho de cada arquivo (--transform
)
Então, eu faria algo como:
mkdir ffmpeg
wget -O - http://johnvansickle.com/ffmpeg/releases/ffmpeg-release-64bit-static.tar.xz |
tar --xz -x -C ffmpeg --strip-components=1
Aqui, eu mesmo fiz o diretório e disse ao tar para extraí-lo (a opção -C
), enquanto removia o primeiro componente do caminho dos arquivos extraídos. Então, ffmpeg-3.4.1-64bit-static/ffprobe
se torna ffprobe
dentro do diretório ffmpeg
.
Ou:
wget -O - http://johnvansickle.com/ffmpeg/releases/ffmpeg-release-64bit-static.tar.xz |
tar --xz -x --transform='s:[^/]*/:ffmpeg/'
Aqui, eu simplesmente mudei o primeiro componente do caminho para ffmpeg
, então não precisei fazer o diretório sozinho. Então, ffmpeg-3.4.1-64bit-static/ffmpeg
se torna ffmpeg/ffmpeg
.
Ou, sabendo que você quer despejar especificamente esses arquivos específicos em /usr/local/bin
, use -C
para colocar diretamente os arquivos lá, enquanto remove todos os componentes do diretório e seleciona exatamente os arquivos que deseja extrair:
wget -O - http://johnvansickle.com/ffmpeg/releases/ffmpeg-release-64bit-static.tar.xz |
tar Jx -C /usr/local/bin --transform='s:.*/::' --wildcards '*/ffmpeg' '*/ffprobe'
Com qualquer tar, você pode especificar os arquivos a serem extraídos. Com o GNU tar, você também pode usar curingas.