abr 22 2010

uptime en windows

Category: WindowsDavid González @ 18:01

Es conocido el comando uptime en linux, el cual nos muestra principalmente la carga del servidor y el tiempo que lleva “levantado”.

dgonzalez@David:~$ uptime
 23:03:14 up 5 days,  2:34,  3 users,  load average: 0.48, 0.55, 0.43

Por columnas la información que nos facilita es:
hora, días desde el último reinicio, número de usuario conectados y la carga del servidor (1 minuto, 5 y 15).

En windows (lo he probado en Server 2003) esta información podemos obtenerla desde la consola windows (cmd) al menos de dos maneras, con estos comandos windows:

  1. Con el comando “net stats srv” que nos mostrará la información que tiene recopilada desde el último reinicio.
    C:\Documents and Settings\David>net stats srv
    Server Statistics for \\SERVER
    
    Statistics since 4/20/2010 9:13 AM
    
    Sessions accepted                  2
    Sessions timed-out                 0
    Sessions errored-out               121
    
    Kilobytes sent                     1146
    Kilobytes received                 1184
    
    Mean response time (msec)          0
    
    System errors                      0
    Permission violations              10
    Password violations                18
    
    Files accessed                     2682
    Communication devices accessed     0
    Print jobs spooled                 0
    
    Times buffers exhausted
    
      Big buffers                      0
      Request buffers                  0
    
    The command completed successfully.
    
  2. Otra opción es con el comando systeminfo (que vimos ayer), que aparte de mostrarnos mucha información del hardware de nuestro servidor, también nos muestra el uptime. Lo concatenaremos con un find, para sólo obtener esta información.
    C:\Documents and Settings\David>systeminfo | find "System Up Time:"
    System Up Time:            0 Days, 14 Hours, 3 Minutes, 6 Seconds
    

Entradas relacionadas

Etiquetas: , ,


abr 21 2010

Comando en windows para obtener información del sistema

Category: WindowsDavid González @ 17:28

Ya vimos como podíamos obtener la información de nuestro hardware como varios comandos Linux. En Windows, fácilmente podemos obtener información del sistema, por ejemplo, pulsando con el botón de la derecha en el icono de Mi Pc, en la opción Administrar (manage). En concreto en “Device Manage” nos aparece todo el hardware instalado.

Desde la consola de Windows (cmd) también podemos sacar información de nuestro sistema, del hardware instalado, del Sistema Operativo, uptime, actualizaciones realizadas, información de la red, etc… con este comando Windows “systeminfo”:

C:\Documents and Settings\David>systeminfo

Host Name:                 SERVER
OS Name:                   Microsoft(R) Windows(R) Server 2003, Standard Edition
OS Version:                5.2.3790 Service Pack 2 Build 3790
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Standalone Server
OS Build Type:             Multiprocessor Free
Registered Owner:          David
Registered Organization:   Empresa
Product ID:                XXXXX-OEM-XXXXXXX-XXXXX
Original Install Date:     2/4/2008, 12:32:10 AM
System Up Time:            0 Days, 14 Hours, 2 Minutes, 43 Seconds
System Manufacturer:       HP
System Model:              ProLiant BL460c G1
System Type:               X86-based PC
Processor(s):              4 Processor(s) Installed.
                           [01]: x86 Family 6 Model 23 Stepping 6 GenuineIntel ~2000 Mhz
                           [02]: x86 Family 6 Model 23 Stepping 6 GenuineIntel ~2000 Mhz
                           [03]: x86 Family 6 Model 23 Stepping 6 GenuineIntel ~2000 Mhz
                           [04]: x86 Family 6 Model 23 Stepping 6 GenuineIntel ~2000 Mhz
BIOS Version:              HP     - 2
Windows Directory:         C:\WINDOWS
System Directory:          C:\WINDOWS\system32
Boot Device:               \Device\HarddiskVolume1
System Locale:             en-us;English (United States)
Input Locale:              en-us;English (United States)
Time Zone:                 (GMT+01:00) Brussels, Copenhagen, Madrid, Paris
Total Physical Memory:     2,046 MB
Available Physical Memory: 1,277 MB
Page File: Max Size:       3,950 MB
Page File: Available:      2,927 MB
Page File: In Use:         1,023 MB
Page File Location(s):     C:\pagefile.sys
Domain:                    Dominio
Logon Server:              \\SERVER
Hotfix(s):                 316 Hotfix(s) Installed.
                           [01]: File 1
                           [02]: File 1
                           [03]: File 1
                           [04]: File 1
                           [05]: File 1
                           [06]: File 1
                           [07]: File 1
                           [08]: File 1
                           [09]: File 1
                           [10]: File 1
                           [11]: File 1
                           [12]: File 1
                           [13]: File 1
                           [14]: File 1
                           [15]: File 1
                           [16]: File 1
                           [17]: File 1
                           [18]: File 1
                           [19]: File 1
                           [20]: File 1
                           [21]: File 1
                           [22]: File 1
                           [23]: File 1
                           [24]: File 1
                           [25]: File 1
                           [26]: File 1
                           [27]: File 1
                           [28]: File 1
                           [29]: File 1
                           [30]: File 1
                           [31]: File 1
                           [32]: File 1
                           [33]: File 1
                           [34]: File 1
                           [35]: File 1
                           [36]: File 1
                           [37]: File 1
                           [38]: File 1
                           [39]: File 1
                           [40]: File 1
                           [41]: File 1
                           [42]: File 1
                           [43]: File 1
                           [44]: File 1
                           [45]: File 1
                           [46]: File 1
                           [47]: File 1
                           [48]: File 1
                           [49]: File 1
                           [50]: File 1
                           [51]: File 1
                           [52]: File 1
                           [53]: File 1
                           [54]: File 1
                           [55]: File 1
                           [56]: File 1
                           [57]: File 1
                           [58]: File 1
                           [59]: File 1
                           [60]: File 1
                           [61]: File 1
                           [62]: File 1
                           [63]: File 1
                           [64]: File 1
                           [65]: File 1
                           [66]: File 1
                           [67]: File 1
                           [68]: File 1
                           [69]: File 1
                           [70]: File 1
                           [71]: File 1
                           [72]: File 1
                           [73]: File 1
                           [74]: File 1
                           [75]: File 1
                           [76]: File 1
                           [77]: File 1
                           [78]: File 1
                           [79]: File 1
                           [80]: File 1
                           [81]: File 1
                           [82]: File 1
                           [83]: File 1
                           [84]: File 1
                           [85]: File 1
                           [86]: File 1
                           [87]: File 1
                           [88]: File 1
                           [89]: File 1
                           [90]: File 1
                           [91]: File 1
                           [92]: File 1
                           [93]: File 1
                           [94]: File 1
                           [95]: File 1
                           [96]: File 1
                           [97]: File 1
                           [98]: File 1
                           [99]: File 1
                           [100]: File 1
                           [101]: File 1
                           [102]: File 1
                           [103]: File 1
                           [104]: File 1
                           [105]: File 1
                           [106]: File 1
                           [107]: File 1
                           [108]: File 1
                           [109]: File 1
                           [110]: File 1
                           [111]: File 1
                           [112]: File 1
                           [113]: File 1
                           [114]: File 1
                           [115]: File 1
                           [116]: File 1
                           [117]: File 1
                           [118]: File 1
                           [119]: File 1
                           [120]: File 1
                           [121]: File 1
                           [122]: File 1
                           [123]: File 1
                           [124]: File 1
                           [125]: File 1
                           [126]: File 1
                           [127]: File 1
                           [128]: File 1
                           [129]: File 1
                           [130]: File 1
                           [131]: File 1
                           [132]: File 1
                           [133]: File 1
                           [134]: File 1
                           [135]: File 1
                           [136]: File 1
                           [137]: File 1
                           [138]: File 1
                           [139]: File 1
                           [140]: File 1
                           [141]: File 1
                           [142]: File 1
                           [143]: File 1
                           [144]: File 1
                           [145]: File 1
                           [146]: File 1
                           [147]: File 1
                           [148]: File 1
                           [149]: File 1
                           [150]: File 1
                           [151]: File 1
                           [152]: File 1
                           [153]: Q147222
                           [154]: KB933854 - QFE
                           [155]: KB953298 - QFE
                           [156]: SP1 - SP
                           [157]: Q936181
                           [158]: Q954430
                           [159]: Q973688
                           [160]: IDNMitigationAPIs - Update
                           [161]: NLSDownlevelMapping - Update
                           [162]: KB925398_WMP64
                           [163]: KB938127-IE7 - Update
                           [164]: KB942615-IE7 - Update
                           [165]: KB944533-IE7 - Update
                           [166]: KB950759-IE7 - Update
                           [167]: KB956390-IE7 - Update
                           [168]: KB958215-IE7 - Update
                           [169]: KB960714-IE7 - Update
                           [170]: KB963027-IE7 - Update
                           [171]: KB969897-IE7 - Update
                           [172]: KB969897-IE8 - Update
                           [173]: KB971930-IE8 - Update
                           [174]: KB971961-IE8 - Update
                           [175]: KB972260-IE8 - Update
                           [176]: KB974455-IE8 - Update
                           [177]: KB976325-IE8 - Update
                           [178]: KB976662-IE8 - Update
                           [179]: KB976749-IE8 - Update
                           [180]: KB978207-IE8 - Update
                           [181]: KB980182-IE8 - Update
                           [182]: KB981332-IE8 - Update
                           [183]: KB914961 - Service Pack
                           [184]: KB921503 - Update
                           [185]: KB923561 - Update
                           [186]: KB924667-v2 - Update
                           [187]: KB925902 - Update
                           [188]: KB926122 - Update
                           [189]: KB927891 - Update
                           [190]: KB929123 - Update
                           [191]: KB930178 - Update
                           [192]: KB931784 - Update
                           [193]: KB932168 - Update
                           [194]: KB933729 - Update
                           [195]: KB933854 - Update
                           [196]: KB935839 - Update
                           [197]: KB935840 - Update
                           [198]: KB936021 - Update
                           [199]: KB936357 - Update
                           [200]: KB936782 - Update
                           [201]: KB938127 - Update
                           [202]: KB938464 - Update
                           [203]: KB941202 - Update
                           [204]: KB941568 - Update
                           [205]: KB941569 - Update
                           [206]: KB941644 - Update
                           [207]: KB941693 - Update
                           [208]: KB942615 - Update
                           [209]: KB942763 - Update
                           [210]: KB942830 - Update
                           [211]: KB942831 - Update
                           [212]: KB942840 - Update
                           [213]: KB943055 - Update
                           [214]: KB943460 - Update
                           [215]: KB943485 - Update
                           [216]: KB944653 - Update
                           [217]: KB945553 - Update
                           [218]: KB946026 - Update
                           [219]: KB948496 - Update
                           [220]: KB948590 - Update
                           [221]: KB950760 - Update
                           [222]: KB950762 - Update
                           [223]: KB950974 - Update
                           [224]: KB951066 - Update
                           [225]: KB951072-v2 - Update
                           [226]: KB951698 - Update
                           [227]: KB951748 - Update
                           [228]: KB952004 - Update
                           [229]: KB952069 - Update
                           [230]: KB952954 - Update
                           [231]: KB953298 - Update
                           [232]: KB954
Network Card(s):           2 NIC(s) Installed.
                           [01]: HP NC373i Multifunction Gigabit Server Adapter
                                 Connection Name: BackEND
                                 DHCP Enabled:    No
                                 IP address(es)
                                 [01]: 10.0.0.XXX
                           [02]: HP NC373i Multifunction Gigabit Server Adapter
                                 Connection Name: FrontEND
                                 DHCP Enabled:    No
                                 IP address(es)
                                 [01]: XX.XXX.XX.XXX

Entradas relacionadas

Etiquetas: , , ,


abr 19 2010

Instalar librería Mail_mime en pear

Category: Instalar,WindowsDavid González @ 7:00

Para enviar email mediante programación en php, podemos usar (si esta disponible) la librería Mail de pear. Usando estas funciones podemos enviar un email sin problemas.

No obstante, si queremos enviar emails con adjuntos, hace falta otra librería para crear mensajes MIMES. Esta librería es Mail_Mime.

Si no la tenemos instalada en nuestro server, el propio pear nos permite instalarla fácilmente. Lo haremos desde cmd, la consola en windows.

Primero nos situaremos en la ruta donde tengamos instalado pear.

cd C:\PHP\PEAR

En esta ruta debemos encontrar un fichero llamado pear.bat. Para completar la instalación basta con este comando:

C:\PHP\PEAR>pear install Mail_Mime-1.7.0
WARNING: channel "pear.php.net" has updated its protocols, use "channel-update pear.php.net" to update
downloading Mail_Mime-1.7.0.tgz ...
Starting to download Mail_Mime-1.7.0.tgz (31,175 bytes)
.........done: 31,175 bytes
install ok: channel://pear.php.net/Mail_Mime-1.7.0

Ya podemos enviar correos mimes con adjuntos en php, usando la librería Mail_mime de pear.

Entradas relacionadas

Etiquetas: , ,


abr 07 2010

Generar estadísticas AWStats en Windows

Category: WindowsDavid González @ 19:38

Hoy vamos a ver la receta para generar las estadísticas de AWStats en un servidor windows a partir de los logs de acceso.

AWStats es una herramienta open source de informes de análisis web, apta para analizar datos de servicios de Internet como un servidor web, streaming, mail y FTP. AWstats analiza los archivos de log del servidor, y con base a ellos produce informes HTML. Los datos son presentados visualmente en informes de tablas y gráficos de barra. Pueden crearse informes estáticos mediante una interfaz de línea de comando, y se pueden obtener informes on-demand a través de un navegador web, gracias a un programa CGI.

AWStats soporta la mayoría de los formatos de archivos log de servidor web conocidos, entre ellos Apache (formato de log NCSA combinado/XLF/ELF o formato común/CLFt), WebStar, IIS (formato de log del W3C) y muchos otros formatos comunes de Internet. Los desarrolladores pueden contribuir con el proyecto AWStats a través de SourceForge.

Lo haremos desde la consola en windows (cmd). Primero iremos a la ruta donde tenemos el script en perl, que tiene el propio AWStats (awstats.pl). Normalmente se encuentra en la ruta donde lo tenemos instalado, en la carpeta wwwroot\cgi-bin, en mi caso:

cd c:\AWStats\wwwroot\cgi-bin

Una vez situados en esta ruta, ejecutaremos este comando:

C:\AWStats\wwwroot\cgi-bin>c:\Perl\bin\perl.exe awstats.pl -update -logfile=C:\domains\tureceta.es\logs\W3SVC9123\ex100407.log -config=tureceta.es

Vamos a explicar brevemente lo que acabamos de hacer. Hemos ejecutado el script awstats.pl con perl, por tanto hemos tenido que indicar la ruta completa donde tenemos el ejecutable de perl instalado en el server, en mi caso (c:\Perl\bin\perl.exe).

A continuación le pasamos la opción update, para que actualice. La opción -logfile es para indicar el log de acceso, el cual parseará para sacar los datos.

Por último la opción -config es para pasarle el fichero de configuración del dominio. En mi caso el fichero estaba en la misma ruta donde estábamos trabajando y tiene este formato awstats.tureceta.es.conf.

El resultado de la ejecución sería algo así:

C:\AWStats\wwwroot\cgi-bin>c:\Perl\bin\perl.exe awstats.pl -update -logfile=C:\domains\tureceta.es\logs\W3SVC9123\ex100407.log -config=tureceta.es
Create/Update database for config "./awstats.tureceta.es.conf" by AWStats version 6.7 (build 1.892)
From data in log file "C:\domains\tureceta.es\logs\W3SVC9123\ex100407.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 15139
 Found 2 dropped records,
 Found 6 corrupted records,
 Found 0 old records,
 Found 15131 new qualified records.

Recordad, que podemos sacar toda la información y comandos que podemos utilizar en este script, ejecutándolo sin parámetros:

c:\Perl\bin\perl.exe awstats.pl

Entradas relacionadas

Etiquetas: ,


mar 30 2010

Comando grep en windows = Findstr

Category: WindowsDavid González @ 1:00

Ya veíamos anteriormente el comando find en Windows que era el simil en cmd del comando grep en linux. Viendo las opciones que tenía pudimos apreciar, a pesar de poder resultarnos útil, que se nos quedaba un poco corto respecto a las opciones que nos daba.

Pues bien, existe otro comando en Windows similar pero más completo, es findstr.

  • findstr sirve para buscar cadenas en archivos.
  1. Modo de uso
  2. findstr [/parámetro] cadena [[unidad:][ruta]fichero]

  3. Opciones o parámetro:/B Coincide con el patrón si esta al comienzo de la linea
  4. /E Coincide con el patrón si esta al final de la linea
    /L Utiliza cadena de búsqueda literal
    /R Utiliza cadena de búsqueda con expresiones regulares
    /S Búsqueda recursiva, ficheros en la ruta actual y subdirectorios.
    /I Especifica que no distinga entre mayúsculas y minúsculas
    /X Imprime las líneas que coinciden exactamente
    /V Imprime las líneas que NO coinciden exactamente
    /N Imprime el número de línea antes de cada resultado.
    /M Imprime sólo el fichero que contiene la cadena buscada
    /O Imprime carácter compensado antes de cada línea de juego.
    /P Saltar archivos con caracteres no imprimibles.
    /OFF[LINE] No se salta ficheros con el atributo.
    /A:attr Especifica el atributo de color con dos dígitos hexadecimales. Ver “color /?”
    /F:file Lee la lista del archivo desde el archivo especificado (/ significa la consola).
    /C:string Usa la cadena especificada como una cadena de búsqueda literal.
    /G:file Obtiene las cadenas de búsqueda en el archivo especificado (/ significa la consola)
    /D:dir Buscar en una lista de directorios, separados por punto y coma ‘;’
    “cadena” Especifica el texto a buscar. Si la cadena contiene espacios debe ir entre comillas dobles “”
    [unidad:][ruta]fichero Especifica la ruta del fichero donde queremos buscar. Se puede utilizar el signo “*” como comodín.

  5. Ejemplos

Supongamos que tenemos un fichero C:\tureceta\fichero.txt con este texto y que estamos ubicados en la ruta donde se encuentra el fichero (C:\tureceta), así no tendremos que especificar la ruta completa:

texto de prueba
texto de
text
prueba de

Buscar la cadena de texto “texto”

C:\tureceta>findstr texto fichero.txt
texto de prueba
texto

Buscar las palabras “texto” y “de”

C:\tureceta>findstr "texto de" fichero.txt

texto de prueba
texto
prueba de

Buscar la cadena “texto de”

C:\tureceta>findstr /C:"texto de" fichero.txt

texto de prueba

Buscar la cadena “prueba” al principio de linea

C:\tureceta>findstr /B prueba fichero.txt
prueba de

Buscar la cadena “prueba” al final de linea

C:\tureceta>findstr /E prueba fichero.txt
texto de prueba

Buscar la cadena ‘texto’ que no contenga la cadena ‘prueba’

C:\tureceta>findstr texto fichero.txt | findstr /V prueba
texto

Buscar las líneas que no contengan el texto “text”

C:\tureceta>findstr /V text fichero.txt
prueba de

Buscar las líneas que no contengan la cadena “text” y muestra el numero de línea donde aparecen

C:\tureceta>findstr /V /N text fichero.txt
4:prueba de

Buscar en toda la carpeta los ficheros que contengan la cadena “text” y muestra sólo el nombre del fichero

C:tureceta>findstr /M text *
fichero.txt
fichero2.txt

Expresiones regulares, breves referencias:
. Wildcard: cualquier carácter
* Repetición: cero o más apariciones el carácter o clase
^ Posicione de linea: comienzo de la linea
$ Posicione de linea: final de la linea
[class] Clase de carácter: cualquier carácter en el conjunto
[^class] Clase inversa: cualquier carácter que no esté en el conjunto de
[x-y] Rango: los caracteres dentro del rango especificado
\x Escape: uso literal del metacarácter x
\<xyz Posición de la palabra: Comienzo de la palabra
xyz\> Posición de la palabra: Comienzo de la palabra

Como podéis ver también con findstr, podemos concatenar comandos con pipes “|” así como usar varios parámetros. Vamos a ver si poco a poco vamos sacando partido a las herramientas que nos ofrece la consola Windows


Buscar las líneas que no contengan el texto "text"

Entradas relacionadas

Etiquetas: ,


mar 28 2010

Comando grep en windows = Find

Category: WindowsDavid González @ 20:22

Esta receta es para Windows. A pesar de que no puedo comparar un comando con otro, quiero que conozcáis la versión cmd del comando grep.

El comando Find nos sirve para buscar un determinado texto en los archivos.

  • Find. Busca una cadena de texto en un fichero
  1. modo de uso:
  2. find [/parámetro] “cadena” [[unidad:][ruta]fichero]

  3. Opciones o Parámetros:
  4. /V        Muestra todas la lineas que NO contienen la cadena especificada.
    /C        Muestra sólo un contador con las líneas que contienen la cadena.
    /N        Muestra el número de linea y la cadena especificada.
    /I         Ignora los casos entre mayúsculas y minúsculas
    /OFF[LINE] No se salta ficheros con el atributo.
    “cadena”   Especifica el texto a buscar (Siempre tiene que ir entre comillas dobles “”).
    [unidad:][ruta]fichero  Especifica la ruta del fichero donde queremos buscar. Se puede utilizar el signo “*” como comodín.

  5. Ejemplos:

Supongamos que tenemos un fichero C:\tureceta\fichero.txt con este texto y que estamos ubicados en la ruta donde se encuentra el fichero (C:\tureceta), así no tendremos que especificar la ruta completa:

texto de prueba
texto de
text
prueba

Busca la cadena “texto de prueba”:

C:\tureceta>find "texto de prueba"  fichero.txt

---------- FICHERO.TXT
texto de prueba

Busca la cadena “texto” que no contenga la cadena “prueba”

C:\tureceta>find "texto"  fichero.txt | find /V "prueba"

---------- FICHERO.TXT
texto

Contador de las líneas donde aparece la cadena “texto”

C:\tureceta>find /C "texto" fihero.txt
---------- FICHERO.TXT: 2

Muestra el número de las lineas y donde aparece la cadena “texto”

C:\tureceta>find /N "texto" fichero.txt

---------- FICHERO.TXT
[1]texto de prueba
[2]texto

Como veis se pueden concatenar comandos con pipes “|” y usar varios parámetros seguidos.

Entradas relacionadas

Etiquetas: ,