Hace un tiempo, hemos escrito sobre SoCLI , un script de Python para buscar y explorar el sitio web de Stack Overflow desde la línea de comandos. Hoy hablaremos sobre una herramienta similar llamada "how2" . Es una utilidad de línea de comandos para navegar por Stack Overflow desde Terminal. Puede realizar consultas en inglés sencillo como lo hace en la búsqueda de Google y utiliza las API de Google y Stackoverflow para buscar las consultas dadas. Es una utilidad gratuita y de código abierto escrita con NodeJS .
Examinar el desbordamiento de pila desde la terminal usando how2
Dado que how2 es un paquete de NodeJS, podemos instalarlo usando Npm gerente de empaquetación. Si aún no ha instalado Npm y NodeJS, consulte la siguiente guía.
- Cómo instalar NodeJS en Linux
Después de instalar Npm y NodeJS, ejecute el siguiente comando para instalar la utilidad how2.
$ npm install -g how2
Ahora veamos cómo navegar por Stack Overflow usando este programa. El uso típico para buscar en el sitio de Stack Overflow usando la utilidad "how2" es:
$ how2 <search-query>
Por ejemplo, voy a buscar cómo crear un archivo tgz.
$ how2 create archive tgz
¡Ups! Recibo el siguiente error.
/home/sk/.nvm/versions/node/v9.11.1/lib/node_modules/how2/node_modules/devnull/transports/transport.js:59 Transport.prototype.__proto__ = EventEmitter.prototype; ^ TypeError: Cannot read property 'prototype' of undefined at Object.<anonymous> (/home/sk/.nvm/versions/node/v9.11.1/lib/node_modules/how2/node_modules/devnull/transports/transport.js:59:46) at Module._compile (internal/modules/cjs/loader.js:654:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10) at Module.load (internal/modules/cjs/loader.js:566:32) at tryModuleLoad (internal/modules/cjs/loader.js:506:12) at Function.Module._load (internal/modules/cjs/loader.js:498:3) at Module.require (internal/modules/cjs/loader.js:598:17) at require (internal/modules/cjs/helpers.js:11:18) at Object.<anonymous> (/home/sk/.nvm/versions/node/v9.11.1/lib/node_modules/how2/node_modules/devnull/transports/stream.js:8:17) at Module._compile (internal/modules/cjs/loader.js:654:30)
Puede ser un error. Espero que se solucione en futuras versiones. Sin embargo, encontré una solución publicada aquí .
Para corregir este error temporalmente, debe editar transport.js archivo usando el comando:
$ vi /home/sk/.nvm/versions/node/v9.11.1/lib/node_modules/how2/node_modules/devnull/transports/transport.js
La ruta real de este archivo se mostrará en su salida de error. Reemplace la ruta del archivo anterior con la suya. Luego busque la siguiente línea:
var EventEmitter = process.EventEmitter;
y reemplácelo con la siguiente línea:
var EventEmitter = require('events');
Presione ESC y escriba :wq para guardar y salir del archivo.
Ahora busque de nuevo la consulta.
$ how2 create archive tgz
Aquí está la salida de muestra de mi sistema Ubuntu.
Examinar el desbordamiento de pila desde la terminal
Si la respuesta que está buscando no se muestra en el resultado anterior, presione BARRA ESPACIADORA para iniciar la búsqueda interactiva donde puede revisar todas las preguntas y respuestas sugeridas del sitio de Stack Overflow.
Use las flechas ARRIBA/ABAJO para moverse entre los resultados. Una vez que obtenga la respuesta/pregunta correcta, presione la BARRA ESPACIADORA o la tecla ENTER para abrirla en la Terminal.
Para regresar y salir, presione ESC .
Buscar respuestas para un idioma específico
Si no especifica un idioma, predeterminado es Bash línea de comando de Unix y le dará inmediatamente la respuesta más probable como la anterior. También puede restringir los resultados a un lenguaje específico, por ejemplo, perl, python, c, Java, etc.
Por ejemplo, para buscar consultas relacionadas con el lenguaje "Python" solo use -l bandera como se muestra a continuación.
$ how2 -l python linked list
Para obtener ayuda rápida, escriba:
$ how2 -h
Conclusión
La utilidad how2 es un programa de línea de comando básico para buscar rápidamente preguntas y respuestas desde Stack Overflow sin salir de su Terminal y hace este trabajo bastante bien. Sin embargo, es solo un navegador CLI para desbordamiento de pila. Para algunas funciones avanzadas, como buscar las preguntas más votadas, buscar consultas usando múltiples etiquetas, interfaz de colores, enviar una nueva pregunta y ver estadísticas de preguntas, etc., SoCLI es bueno para ir.
Y, eso es todo por ahora. Espero que esto haya sido útil. Estaré pronto aquí con otra guía útil. Hasta entonces, ¡estén atentos a OSTechNix!
¡Salud!