Por lo tanto, utilizamos man whateverpara obtener el uso y otra información sobre el whatevercomando, cuando se encuentra la sección relevante de información, me gustaría salir del mancomando con la información que queda en la pantalla. Entonces puedo escribir el siguiente comando con el árbitro de arriba. Pero el mancomando sale de toda la pantalla para recuperar la pantalla anterior similar a vim. ¿Hay una manera de lograr esto?
24

Respuestas:
Creo que esto no se trata tanto de
mansí mismo sino más bien de su localizador de elección (PAGERvariable de entorno) combinado con el terminal en uso.Supongo que su localizador es probablemente
less(localizador predeterminado típico hoy en día y se ajusta a la descripción).lesstiene una opción-Xque puede darle un comportamiento similar a lo que está buscando.Por ejemplo,
PAGER="less -X" man manpodría usarse para probarlo, y si considera que este comportamiento es preferible, podría considerar establecerPAGEReste valor de forma permanente.fuente
LESS=-Xpara evitar tener que cambiarPAGER(no confío al 100% en que funcione en todos los programas con un espacio como ese, aunque funciona en el hombre.)Si está ejecutando menos como su localizador (que es muy común), no necesita tratar de modificar su localizador, solo realice la redirección de E / S:
man <whatever you want to man> | cat -Esto imprimirá una copia en el terminal para que pueda desplazarse hacia arriba cuando lo necesite.
fuente
-significa estándar perocatasume que de todos modosComo no solo
lesssino también otras aplicaciones de texto comovimexhiben la misma característica extremadamente molesta, lo que hago es simplemente eliminar la capacidad del terminal de admitir los comandos involucrados de laterminfobase de datos.Estos comandos son
smcupyrmcup, que fueron diseñados para permitir el encendido y de un movimiento dondecupse permitió el comando (posición del cursor).Aquí hay una función de shell que utilicé para automatizar la tarea, funciona al menos con Solaris y probablemente la mayoría de las distribuciones de Linux:
Si su entrada de terminal no tiene respaldo
xterm, debe reemplazarlaxtermpor el nombre de terminal correcto en el script.fuente
Puede canalizar la salida al
catcomandoo úselo en lugar del buscapersonas predeterminado, como en este ejemplo que invoca al hombre sobre sí mismo:
fuente
Sin modificar el buscapersonas, una solución con tuberías que puede funcionar en la mayoría de los entornos:
Ejemplos para
man lsman ls | catman ls | moreman ls | grep somestringfuente
es 2016, solo abra una segunda terminal o pestaña o ventana o lea al hombre en línea.
fuente
Incluso en mis servidores (FreeBSD) instalo X y xfce. Luego asigno un gran búfer (por ejemplo, 10 000 líneas) para los emuladores de terminal para que pueda desplazarme completamente por la página de manual en uno de ellos, y usar una instancia de terminal separada para ensamblar el comando. Funciona de maravilla.
fuente