Ho più alias e funzioni che prima non funzionavano con watch
finché non ho creato una funzione che avvolge il watch
comando come questo, ispirato da @l'L'l risposta accettata:
# fishshell
function watch
command watch -n 0.2 -x fish -c "$argv"
end
# bash
function watch() {
watch -n 0.2 -x bash -c "[email protected]"
}
# zsh
watch() {
watch -n 0.2 -x zsh -c "[email protected]"
}
L'unico inconveniente che vedo qui è che non puoi passare più argomenti watch se vuoi, sicuramente ho aggiunto il -n 0.2
flag per aggiornarlo ogni 0,2 secondi, se hai altri flag che desideri aggiungere dovrai prima aggiungerli qui.
Personalmente uso solo fishshell
quindi spero che gli altri non siano rotti, non esitare a modificare la risposta per correggere i comandi!
Anche come bonus per i pigri che usano spesso l'orologio:alias w=watch
È possibile che watch
non è a conoscenza della tua funzione connection_test_loop. Puoi provare ad aggiungere un export
sotto test_connection forse per risolvere il problema:
test_connection
export -f connection_test_loop
...
↳ http://linuxcommand.org/lc3_man_pages/exporth.html
Quando chiami watch
, potresti aver bisogno di questa sintassi:
watch -x bash -c connection_test_loop