configure o destino do youtube-dl para ~ / Downloads


6

Como faço youtube-dlpara configurar o download padrão para ~ / Downloads em vez da pasta inicial?


Esta questão não é específica para o OS X. O youtube-dl é praticamente uma aplicação multi-plataforma. Eu acho que deve ser movido para Superusuário.
Sarge Borsch

Respostas:


12

youtube-dl Arquivo de configuração

Para definir um local de download padrão, crie um youtube-dl arquivo de configuração em:

~/.config/youtube-dl/config

Dentro desse arquivo, digite a linha:

-o ~/Downloads/%(title)s-%(id)s.%(ext)s

Você pode criar este arquivo usando os dois comandos a seguir:

mkdir -p ~/.config/youtube-dl/
echo "-o ~/Downloads/%(title)s-%(id)s.%(ext)s" > ~/.config/youtube-dl/config

O primeiro comando mkdircria as pastas que levam ao arquivo de configuração. O segundo comando echograva a opção de saída no arquivo.

As opções definidas no seu arquivo de configuração são aplicadas a todas as chamadas youtube-dl. Use a --ignore-configopção para desativar a leitura do arquivo de configuração.


1
Eu gosto de solução de grahams melhor do que a minha para uso com o youtube-dl. Minha versão funciona para todos os aplicativos, no entanto.
Max Ried

1
Obrigado! Essa é a solução. Mas agora estou recebendo o mkv ao invés de arquivos mp4.
Sebastian Semmler

1
Adicione a seguinte linha ao seu arquivo de configuração para solicitar arquivos mp4 ou ter o youtube-dl convert após baixar para mp4:--format mp4
Graham Miln

2

Não há como configurar uma pasta padrão. Em vez disso, você deve anexar a opção -otodas as vezes.

 -o ~/Downloads/%(title)s-%(id)s.%(ext)s
  • %(title)s-%(id)s.%(ext)s é o formato de nome de arquivo padrão para cada download.

2

Não faz o download para sua casa, mas para o diretório de trabalho atual. Altere-o antes de baixar. Se você estiver usando bash, você pode querer criar uma função em sua .bashrcassim:

function youtube-dl ()
{
    cd ~/Downloads/ && {
        `which youtube-dl` "$@"
        cd - > /dev/null
    }
}

Isso altera o diretório de trabalho para a pasta Downloads em sua casa, executa o original youtube-dlcom os argumentos de linha de comando que você passou para a função e, em seguida, altera o diretório de volta.

Você também pode querer dar uma olhada nisso: Como eu executo um programa com um diretório de trabalho diferente do atual, do shell do Linux? como isso também se aplica ao OS X.


Você testou se a which youtube-dlpeça funciona? Isso não se expande para a função uma vez que a função é definida?
nohillside

1
Não. As funções não estão no escopo de which. Que procura no PATH. Eu também testei o script algumas vezes;)
Max Ried

2
Para expandir as funções por nome, use typedef -Fou-f
Max Ried

Hmm, whiché aliased para type -paqui que não retorna nada se type -tnão retornasse file(o que é não como é uma função agora). Ótimo se funciona no seu caso, estranho mesmo assim.
nohillside

whichs manpage afirma o seguinte: "localizar um arquivo de programa no caminho do usuário". which whichtambém retorna um executável em PATH. alias whichnão retorna nada para mim, nem na velha versão do OS X lançada nem em uma versão atual. Além disso, como youtube-dlpode levar mais de um argumento, eu intencionalmente não adicionei aspas ao redor $@.
Max Ried
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.