Truco Windows: redireccionar la salida de un comando de consola
Os dejo un truco del símbolo de sistema (terminal o consola) para Windows, que puede ser muy útil: la redirección de la salida. Y os explico posibles usos. Si a un comando de consola, le añades el operador > puedes hacer que en vez de mostrar el resultado en pantalla (por defecto) lo mande a otro lugar. Por ejemplo un fichero de texto o la impresora. Por ejemplo en mi trabajo a veces tengo que monitorizar el router de un cliente o una máquina que salga a internet. Podemos poner el comando ping -t www.google.es > c:registrodepings.txt Esto me guardará un fichero en el disco C: (la ruta la puedes cambiar) con una serie de pings (el -t hace que no pare) o llamadas a google. Esto puedo verlo al día siguiente para ver si han habido cortes. Otro uso es mandar un fichero o listado a la impresora. Por ejemplo dir>prn me manda el listado de un directorio a la impresora. Una tercera utilidad es hacer que no nos muestre la salida de algo en pantalla. Por ejemplo c:test.bat >NUL No mostrará el resultado del fichero test.bat Y por último podemos producir los resultados por un lado y los errores (salida 2) por otro. Por ejemplo: test.bat > testlog.txt 2> testerrors.txt crea 2 ficheros, un log del test con la salida y uno de errores con los posibles errores de la misma. Si además, queremos añadir contenido a un fichero existente podemos hacerlo con la doble redirección. Es decir si hago ping -t www.google.es >> c:registrodepings.txt al día siguiente, los resultados se añadirán al fichero anterior en vez de crear uno nuevo. El operador contrario < lo que hace es coger el contenido de un fichero. Por ejemplo sort <lista.txt me produce un resultado ordenado alfabéticamente del fichero lista.txt Por último el comando | encadena salidas. Por ejemplo el muy usado dir |more mete la salida de dir en el more (que lo divide en páginas). O comando1 | comando2 mete la salida del 1 en el comando 2.