CentOS conteúdo do diretório rsync mas não diretório?

0

Estou tentando obter o conteúdo de / deploy / para preencher / panda / mas não parece funcionar. Eu procurei aqui e encontrei instruções para deixar as barras à direita; no entanto, toda vez que eu executo, um diretório com nome em branco é criado dentro de / panda / (so / panda / /) que contém o conteúdo de / deploy /, mas estou tentando fazer com que isso ocorra sem criar um novo diretório. Eu gostaria que o conteúdo de / deploy / sobrescrevesse o conteúdo de / panda /

Este é o código que estou usando no momento:

rsync -ahrvz /home/jellywhat/public_html/deploy/ /home/jellywhat/public_html/panda/

Eu não consigo um diretório 'deploy' dentro de / panda, eu simplesmente obtenho um diretório com um nome em branco, contendo o conteúdo de / deploy /

Eutenteiremoverabarranodiretórioderecebimento...

rsync-ahrvz/home/jellywhat/public_html/deploy//home/jellywhat/public_html/panda

Issoaparentementenãofaznada.Eureceboumemailcomalistadearquivos,queestácorreta,eincluiFileA.php,umarquivoespecíficoqueestouusandocomoreferência,masFileA.phpqueestálocalizadoem/deploy/cfx_controllers/nãoestásendocopiadopara/panda/cfx_controllers/mesmoquesejaoarquivomaisrecentemodificadoenãoexisteem/panda/cfx_controllers/

ATUALIZAÇÃO:1:51PM

Naverdade,está"trabalhando"; não está atualizando o diretório panda existente, ele está criando um inteiramente novo:

Comopossofazercomqueele'atualize'odiretório'existente'semqueissoocorra?

ATUALIZAÇÃO:14:36

Eutenteiodiretórioderecebimentocomesemumabarra.Comumabarra,criaumdiretórioduplicadonodiretóriopai.Semumabarra,elecolocaoconteúdode/deploy/dentrodeumapastaaparentementesemnome.

Alguém tem alguma orientação sobre onde eu não estou conseguindo obter este script de implantação para realmente implantar os arquivos?

    
por ihateartists 07.03.2016 / 19:49

2 respostas

1

Este comando copiará o conteúdo de deploy (mas não o próprio nome do diretório) para o diretório de destino existente panda :

rsync -ahrvz /home/jellywhat/public_html/deploy/ /home/jellywhat/public_html/panda/

A barra no diretório de origem informa rsync para copiar o conteúdo do diretório sem o próprio nome do diretório. A barra no final do diretório de destino é irrelevante. Se a cópia não funcionar assim para você, então você não inseriu o comando exatamente como escreveu em sua pergunta.

Observe que não faz sentido usar -z , pois você não pode compactar arquivos durante uma cópia local. Além disso, o -r está implícito em -a para que possa ser omitido.

Hum, esse arquivo que você diz que está criando para conter o comando. Se você o criou em um sistema Windows, certifique-se de transferi-lo como um arquivo de texto e não como um arquivo binário. Caso contrário, os finais da linha do arquivo ficarão mal no caminho.

    
por 07.03.2016 / 21:54
0

Não há "diretórios com nomes vazios" (ou arquivos, no que diz respeito ao assunto) no Linux, você provavelmente tem algum lixo (que imprime como nada) no final do comando. Note que você pode ter um arquivo chamado a file name<move back to beginning of line><erase to end of line> (aqui <...> é uma sequência de caracteres que diz ao seu terminal para fazer como indicado). Você não nada, mas há um nome lá. Diversão infinita para ser tido de novatos; -)

rsync é muito exigente no final (não há outra forma razoável de dizer ao programa o que ele deve fazer), leia atentamente o manual.

    
por 07.03.2016 / 21:06