Pesquisei bastante antes de perguntar isso! (Mesmo assim espero ter uma duplicata apontada).
Então eu coleciono vários arquivos, por exemplo:
find . -name "2020-*"
... existe alguma maneira de "canalizar" todos esses arquivos em um arquivo .7z? (NB, percebo que "pipe" pode não ser a palavra certa, pois a operação que desejo é na verdade uma operação de cópia de arquivo).
Eu tentei coisas como:
find . -name "2020-*" | 7z a -p pumple.7z
... isso me dá ">" na próxima linha, como se esperasse alguma entrada do console.
O mesmo acontece com o seguinte:
find . -name "2020-* > 7z a -p pumple.7z
Você precisa fornecer os nomes dos arquivos como argumentos para
7z
:Isso diz
find
para procurar arquivos (de qualquer tipo) cujo nome corresponda2020-*
e, quando encontrar esses arquivos, execute7z a -p pumple.7z
seguido dos nomes dos arquivos. O{}
é o espaço reservado para os nomes dos arquivos e+
indicafind
para executar o comando com tantos nomes de arquivos quanto possível de uma só vez.