Como posso automatizar processos de morte rotulados como “Waiting” no MySQL com uma linha simples de bash?

0

Eu estava tentando executar o seguinte slogan sem sucesso, tentei muitas variantes da mesma linha sem sucesso, espero que alguém veja o erro.

mysql -u user --password=\m\y\p\a\s\s  -h myhost -e 'kill $(mysql -u user --password=\m\y\p\a\s\s -h myhost -e "show processlist;" | grep Waiting | awk '{print $1}' )'

Basicamente dentro de $ (...) estou fazendo uma lista de processos em status Aguardando e fora desse código eu estou tentando matar tais processos, essa é uma pergunta bash com o código $ () é por isso que eu m postando aqui, e eu acho que há algo com aspas, mas eu não sei como consertar isso.

    
por Omar Alvarado 14.03.2017 / 04:36

1 resposta

1

Suas citações são muito strongs.

Realmente.

' s são citações "strongs", o que significa que as expansões de parâmetros, expansões de subshell, expansões de histórico e similares não funcionam nelas.

$ echo '$(echo foo)'
$(echo foo)
$ echo "$(echo foo)"
foo
    
por 14.03.2017 / 04:39