Скопируйте и вставьте (или поместите в конец файла ~ / .bashrc
) эту функцию bash :
logs() { zcat -f $(ls -rv "$1"*) | less; }
Теперь вы можете ввести, например, журналы / var / log / syslog
или logs /var/log/nginx/access.log
для просмотра всех системного журнала или nginx записывать сообщения от самого старого к самому новому с меньше .
Затем вы можете выполнить поиск что-то , набрав / something
и нажав n
, чтобы ввести следующий .
No ha malinterpretado la numeración de la versión y, de hecho, esta es un área en la que la búsqueda de símbolos suele fallar.
En cuanto a quién es responsable, diría que en los sistemas modernos pertenece a quien crea la aplicación, no a la biblioteca :si vincula la aplicación conld -z now
(al menos en GNU binutils ), el enlazador dinámico resolverá todos los símbolos al inicio y fallará antes si falta algún símbolo (, por lo que no es necesario que agregue controles manuales propios ). Puede habilitar este comportamiento después de vincular un programa exportando LD_BIND_NOW=1
al entorno (cualquier valor que no sea -vacío funciona, y esto no es -específico de Linux ).
Este tipo de problema generalmente lo resuelven los sistemas de administración de paquetes :que mantienen metadatos extensos que describen los requisitos de versión para los símbolos y generan las dependencias de versiones apropiadas. También es posible que los autores de bibliotecas ayuden a mejorar la situación, pero puede requerir mucho esfuerzo; consulte los símbolos de versión especial de GNU libc (, los símbolos GLIBC_...
que a menudo aparecen en los mensajes de error )y, en general, el manejo completo de los símbolos versionados.