Me gustan las ventanas y no lo niego
Creo que los sistemas de ventanas son muy cómodos, no solo a nivel usuario. Para realizar tareas de administración me gusta tener una ventana donde vea todas las opciones y poder editar. Me resulta infinitamente más cómodo que tener que leerme un fichero de script y esperar que las opciones que necesite y que no estén configuradas vengan en una linea comentada.
Aunque reconozco que para ciertas operaciones por lotes la linea de comandos está muy bien y que debería pensar más en eso de lo que suelo hacer.
Linea de comandos en Windows.
Aunque parezca mentira hay linea de comandos en windows, y a fata de una hay dos: El command (para mi MS-DOS aunque no lo sea) y el Powershell.
Powershell es mucho más pontente que la consola de MS-DOS. Fue desarrollado por Mircrosoft para contentar a los administradores de windows que echaban de menos una linea de comando ponente, como la de UNIX. Se lanzó en el 2003 y actualmente se distribuye con los sistemas operativos, tanto de servidor (Server 2008) como de escritorio (Windows 7).
La nueva política de Microsoft intenta que todos sus productos tengan soporte powershell para que los administradores puedan hacer las mismas operaciones tanto desde ventanas como desde linea de comandos, así que sqlserver trae sus scripts de powershell, exchange server también, etc.
Por ejemplo si instalas el Server Core de Windows 2008 Server, se teiene que hacer todo desde la línea de comandos.
Punto negro de powershell
Powershell tiene una carencia importante: No hay una instruccion equivalente a tail -f en UNIX. Lo más parecido es get-content -wait, pero no funciona todo lo bien que sería necesario. Afortunadamente la comunidad de ususarios han generado herramientas para suplir esta carencia. Esperoemos que los chicos de Redmond añadan soporte oficial en próximas actualizaciones.
Ya está bien de tanto coñazo ¿y lo del grep como va?
Para filtrar lineas de fichero en MS-DOS existe la instrucción findstr y para volcar a un fichero cualquier salida de comando utilizamos > así que para hacer el filtro que necesitaba en el log solo tenía que hacer:
findstr WARN aplicacion.log > logfiltrado.log
En powershell se haría concatenando tres comandos: get-content, select-string y out-file, los comandos en powershell se concatenan con pipes:
get-content aplicacion.log | select-string WARN | out-file logfiltrado.log
Y cómo se abre el powershell? Ejecutar > "powershell" ? Es que estoy en el Mac xD
ResponderEliminarActualiza la entrada con los comandos que me acabas de pasar para realizar "greps" en directorios:
ResponderEliminar>Get-ChildItem -Recurse -Include *.* | Select-String "text to search for"
>dir -r -i *.* | Select-String "text to search for"
Sí, Select-String es el que filtra en el text, pero hay que pasarle los ficheros, que es lo que hace el dir o el get-children antes.
ResponderEliminar