Recientemente aprendí sobre watch , pero tengo problemas para que funcione con comandos relativamente sofisticados.
Por ejemplo, me gustaría solicitar watch
ejecutar el siguiente comando zsh
cada tres segundos * :
for x in `command_1 | grep keyword | cut -d' ' -f1`; do command_2 "word[word=number]" $x; done
Como puede ver, la línea anterior incluye comillas simples, comillas dobles, entre otros caracteres especiales.
Entonces intenté:
watch -n 3 "for x in `my_command | grep keyword | cut -d' ' -f1`; do command2 "rusage[mem=7000]" $x; done"
pero luego obtuve:
no se encontraron coincidencias para x in! @ # $ # ....; hecho
Probé otras combinaciones sin éxito. Aquí hay uno de esos intentos:
watch -n 3 "for x in $(bjobs -w | grep pre_seg | cut -d' ' -f1); do bmod -R "rusage[mem=7000]" $x; done"
que también da como resultado un error similar.
¿Alguna idea de cómo hacer que esto funcione?
* También me interesarían las soluciones que funcionan enbash
watch
no viene con las opciones-x
ni-c
en mi máquina. Lo busqué en línea y no he encontrado ninguna página de manual que los mencione. ¿Qué hacen estas opciones?