
No puedo usar mi comando de alias personalizado en la utilidad de vigilancia para monitorear colas diferentes. Dice comando no encontrado. ¿Hay alguna forma de usar un comando con alias en la utilidad de vigilancia?
$ alias lq='ls -lhrt /home/foo/stat/*.msg'
$ watch lq
sh: lq: command not found
Respuesta1
No hay una respuesta fácil: lo mejor que pude hacer fue agregar unfunción watchany
que contiene:
watchany() { alias "$1" 2>/dev/null| \
( t=`line`; if [ -n "$t" ]; then t=${t#*=\'}; t=${t%\'}; shift; \
watch $t "$@"; else watch "$@"; fi ) }
Debe ser una función para evitar el procesamiento en un subnivel (y los ()
corchetes son por la misma razón). Puedes agregarlo a .bashrc
.
No lo he llevado al máximo, pero como se indicó anteriormente, no funciona correctamente con archivos o parámetros adicionales que contienen espacios en blanco incrustados. Si esto es un problema, tendrás que elaborarlo tú mismo.
Cuando esté satisfecho de que está funcionando como desea, puede reemplazar watch
la función por $(which watch)
y luego alias watch=watchall
.
Si solo desea ver uno o dos alias, entonces probablemente sea más fácil agregar alias adicionales, como por ejemplo:
alias watchlq='watch ls -lhrt /home/foo/stat/*.msg'
Por supuesto, deberá recordar cambiar watchlq
si alguna vez cambia lq
.