Pular para o conteúdo

Tem como pausar intervalo para um script bash que exportar vários xml?

Responder tópico
  • Denunciar
  • Indicar

1. Tem como pausar intervalo para um script bash que exportar vários xml?

Enviado em 20/05/2021 - 19:15h

Eu primeiro exportei o xml de um site Wordpress e depois fiz um script para importar no outro site. Ocorre que esse script faz uma série de ações em sequencia. Talvez isso desgaste o servidor por estar o tempo todo trabalhando. Alguém sabe como pausar por um minuto após o processamento de cada xml fatiado? Isso ajuda o servidor ou não faz diferença? Segue os comandos que utilizei abaixo.


wp export --dir=/var/www/site.com.br/htdocs/backup --user=carlos --skip_comments --post_status=publish --filename_format={site}.{date}.{n}.xml --post_type=post --max_file_size=5 --start_date=2020-03-01 --end_date=2021-05-20 --allow-root



#!/bin/bash
wp import site.2021-05-20.000.xml --authors=create --allow-root
wp import site.2021-05-20.001.xml --authors=create --allow-root
wp import site.2021-05-20.002.xml --authors=create --allow-root
wp import site.2021-05-20.003.xml --authors=create --allow-root
wp import site.2021-05-20.004.xml --authors=create --allow-root
wp import site.2021-05-20.005.xml --authors=create --allow-root
wp import site.2021-05-20.006.xml --authors=create --allow-root
wp import site.2021-05-20.007.xml --authors=create --allow-root
wp import site.2021-05-20.008.xml --authors=create --allow-root
wp import site.2021-05-20.009.xml --authors=create --allow-root
wp import site.2021-05-20.010.xml --authors=create --allow-root
wp import site.2021-05-20.011.xml --authors=create --allow-root
wp import site.2021-05-20.012.xml --authors=create --allow-root
wp import site.2021-05-20.013.xml --authors=create --allow-root
wp import site.2021-05-20.014.xml --authors=create --allow-root
wp import site.2021-05-20.015.xml --authors=create --allow-root
wp import site.2021-05-20.016.xml --authors=create --allow-root
wp import site.2021-05-20.017.xml --authors=create --allow-root
wp import site.2021-05-20.018.xml --authors=create --allow-root
wp import site.2021-05-20.019.xml --authors=create --allow-root
wp import site.2021-05-20.020.xml --authors=create --allow-root
wp import site.2021-05-20.021.xml --authors=create --allow-root
wo clean --fastcgi
clear


O primeiro comando é via WP-CLI e uso ao final o --allow-root por executá-lo como root. Quem estiver com outro usuário, eu acho que não precisa acrescentar --allow-root

Depois criei um arquivo.sh, dei permissão com chmod +x e mandei executar ./arquivo.sh

 wo clean --fastcgi  
limpa o cache se o servidor foi criado com o wordops (www.wordops.net)

Responder tópico

2. Re: Tem como pausar intervalo para um script bash que exportar vários xml?

Enviado em 21/05/2021 - 02:46h

danielpaixaobr escreveu:

Eu primeiro exportei o xml de um site Wordpress e depois fiz um script para importar no outro site. Ocorre que esse script faz uma série de ações em sequencia. Talvez isso desgaste o servidor por estar o tempo todo trabalhando. Alguém sabe como pausar por um minuto após o processamento de cada xml fatiado? Isso ajuda o servidor ou não faz diferença? Segue os comandos que utilizei abaixo.


wp export --dir=/var/www/site.com.br/htdocs/backup --user=carlos --skip_comments --post_status=publish --filename_format={site}.{date}.{n}.xml --post_type=post --max_file_size=5 --start_date=2020-03-01 --end_date=2021-05-20 --allow-root



#!/bin/bash
wp import site.2021-05-20.000.xml --authors=create --allow-root
wp import site.2021-05-20.001.xml --authors=create --allow-root
wp import site.2021-05-20.002.xml --authors=create --allow-root
wp import site.2021-05-20.003.xml --authors=create --allow-root
wp import site.2021-05-20.004.xml --authors=create --allow-root
wp import site.2021-05-20.005.xml --authors=create --allow-root
wp import site.2021-05-20.006.xml --authors=create --allow-root
wp import site.2021-05-20.007.xml --authors=create --allow-root
wp import site.2021-05-20.008.xml --authors=create --allow-root
wp import site.2021-05-20.009.xml --authors=create --allow-root
wp import site.2021-05-20.010.xml --authors=create --allow-root
wp import site.2021-05-20.011.xml --authors=create --allow-root
wp import site.2021-05-20.012.xml --authors=create --allow-root
wp import site.2021-05-20.013.xml --authors=create --allow-root
wp import site.2021-05-20.014.xml --authors=create --allow-root
wp import site.2021-05-20.015.xml --authors=create --allow-root
wp import site.2021-05-20.016.xml --authors=create --allow-root
wp import site.2021-05-20.017.xml --authors=create --allow-root
wp import site.2021-05-20.018.xml --authors=create --allow-root
wp import site.2021-05-20.019.xml --authors=create --allow-root
wp import site.2021-05-20.020.xml --authors=create --allow-root
wp import site.2021-05-20.021.xml --authors=create --allow-root
wo clean --fastcgi
clear


O primeiro comando é via WP-CLI e uso ao final o --allow-root por executá-lo como root. Quem estiver com outro usuário, eu acho que não precisa acrescentar --allow-root

Depois criei um arquivo.sh, dei permissão com chmod +x e mandei executar ./arquivo.sh

 wo clean --fastcgi  
limpa o cache se o servidor foi criado com o wordops (www.wordops.net)


Veja se é isso que quer.

#!/bin/bash
for site in 'site.2021-05-20.'{000..21}.'xml'; do
wp import ${site} --authors=create --allow-root;
sleep 1; #pausa de 1 segundo, se necessário, aumente...
done
wo clean --fastcgi
clear

Obs:. Como seu exemplo está na sequência, 000 a 021,
Não é necessário escrever as 21 linhas......


______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/";,
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________

3. Não deu certo

Enviado em 23/05/2021 - 11:28h

Criei o script como você sugeriu, apenas trocando site pelo nome real e não deu certo

O nome real do arquivo é expressorondnia.2021-05-23.xml


4. Re: Tem como pausar intervalo para um script bash que exportar vários xml?

Enviado em 23/05/2021 - 18:01h


danielpaixaobr escreveu:

Criei o script como você sugeriu, apenas trocando site pelo nome real e não deu certo

O nome real do arquivo é expressorondnia.2021-05-23.xml

Desculpa Daniel, quando copiei e colei, foi errado (faltou o for),
corrigido:
#!/bin/bash
for site in 'site.2021-05-20.'{000..21}.'xml'; do
wp import ${site} --authors=create --allow-root;
sleep 1; #pausa de 1 segundo, se necessário, aumente...
done
wo clean --fastcgi
clear



______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/";,
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder