AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 407988
Accepted
55597
55597
Asked: 2017-12-01 05:52:10 +0800 CST2017-12-01 05:52:10 +0800 CST 2017-12-01 05:52:10 +0800 CST

Procurando por um gerenciador de download de terminal

  • 772

Estou procurando um gerenciador de download em execução na CLI (terminal).

A ferramenta deve resolver o seguinte propósito.

  1. Pegue uma lista de URLs do YouTube como entrada / pegue uma lista de URLs de um arquivo.

  2. Deve pausar e retomar o download quando a conexão de rede for interrompida.

  3. Deve ser executado no terminal. Estou executando isso em um servidor de mídia sem cabeça.

Eu uso um youtube-dlscript nodejs agora. Mas o script carece de monitoramento de conexão e verificação de integridade de download, recurso de retomada de download.

Eu tentei o gerenciador de download extremo e não funcionava sem cabeça.

Quaisquer insumos para alcançar o mesmo são apreciados.

terminal software-rec
  • 2 2 respostas
  • 288 Views

2 respostas

  • Voted
  1. Best Answer
    林果皞
    2017-12-01T10:21:44+08:002017-12-01T10:21:44+08:00

    Dois whileloops bashdevem ser suficientes:

    while ! youtube-dl --batch-file /tmp/yt -i -c --socket-timeout 5; do while ! ping -c 1 -W 1 google.com; do echo "Network interface may down, please check your network"; sleep 10; done; echo "Network up but got url failed before, re-loop file after 5 seconds."; sleep 5; done
    

    Explicação:

    • youtube-dlé um pacote python disponível para instalação por meio do gerenciador de pacotes comum, como apt.
    • /tmp/ytarquivo contém lista de urls linha por linha.
    • -isignifica continuar escolhendo o próximo url no arquivo se encontrar um erro inválido de url (mas não erro de soquete, que irá pingpara o loop "falha e espera pela rede ativa")
    • -csignifica forçar a retomada de arquivos parcialmente baixados. O nome do arquivo deve ter um formato consistente para que o resumo funcione (ou seja, você não pode alterar o youtube-dlformato da próxima vez e esperar que o resumo funcione). Eu pessoalmente uso o -o './%(title)s-%(upload_date)s-%(id)s.%(ext)s'formato
    • Eu pessoalmente também adiciono --no-mtimepara garantir o arquivo "toque" (útil se eu quiser listar a classificação do arquivo por tempo de download em vez de tempo de atualização de vídeo).
    • 2
  2. Basile Starynkevitch
    2017-12-01T06:07:11+08:002017-12-01T06:07:11+08:00

    Qualquer cliente HTTP de linha de comando deve ser útil. Em sistemas POSIX, considere GNU wget ou curl (e, se o protocolo for FTP , um dos vários clientes de linha de comando FTP, como ncftp ).

    Você também pode codificar algo sozinho, usando alguma biblioteca de cliente HTTP como libcurl (e muitas linguagens de script, por exemplo, Python, Guile, Perl, etc... têm vários recursos de cliente HTTP). Certifique-se de aprender um pouco mais sobre HTTP e seus cookies .

    Você pode encontrar (para Linux) algumas ferramentas de linha de comando específicas do YouTube.

    • 1

relate perguntas

  • Erro de sintaxe: número fd inválido?

  • traceroute, imprima apenas as informações do gateway

  • Como posso dar uma olhada no ssh?

  • Área de memória Flash Nand de backup

  • Qual é a diferença entre dd_rescue e ddrescue, quando preferir qual?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Matriz JSON para bash variáveis ​​usando jq

    • 4 respostas
  • Marko Smith

    A data pode formatar a hora atual para o fuso horário GMT? [duplicado]

    • 2 respostas
  • Marko Smith

    bash + lê variáveis ​​e valores do arquivo pelo script bash

    • 4 respostas
  • Marko Smith

    Como posso copiar um diretório e renomeá-lo no mesmo comando?

    • 4 respostas
  • Marko Smith

    conexão ssh. Conexão X11 rejeitada devido a autenticação incorreta

    • 3 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Marko Smith

    comando systemctl não funciona no RHEL 6

    • 3 respostas
  • Marko Smith

    rsync porta 22 e 873 uso

    • 2 respostas
  • Marko Smith

    snap /dev/loop em 100% de utilização -- sem espaço livre

    • 1 respostas
  • Marko Smith

    chave de impressão jq e valor para todos no subobjeto

    • 2 respostas
  • Martin Hope
    EHerman Matriz JSON para bash variáveis ​​usando jq 2017-12-31 14:50:58 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Drux A data pode formatar a hora atual para o fuso horário GMT? [duplicado] 2017-12-26 11:35:07 +0800 CST
  • Martin Hope
    AllisonC Como posso copiar um diretório e renomeá-lo no mesmo comando? 2017-12-22 05:28:06 +0800 CST
  • Martin Hope
    Steve Como as permissões de arquivo funcionam para o usuário "root"? 2017-12-22 02:46:01 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST
  • Martin Hope
    Cbhihe Altere o editor padrão para vim para _ sudo systemctl edit [unit-file] _ 2017-12-03 10:11:38 +0800 CST
  • Martin Hope
    showkey Como baixar o pacote não instalá-lo com o comando apt-get? 2017-12-03 02:15:02 +0800 CST
  • Martin Hope
    youxiao Por que os diretórios /home, /usr, /var, etc. têm o mesmo número de inode (2)? 2017-12-02 05:33:41 +0800 CST
  • Martin Hope
    user223600 gpg — o comando list-keys gera uid [ desconhecido ] depois de importar a chave privada para uma instalação limpa 2017-11-26 18:26:02 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve