Dos primos luchan contra la tecnología

Aprendizaje y formación en informática profesional mediante videotutoriales

Retomando los ficheros batch – Parte III – Instrucciones

Bueno, este es ya mi tercer artículo sobre el tema de los archivos batch y vamos a ver si podemos ir aprendiendo nuevas cositas poco a poco pero ya metiéndonos un poco más en faena pero recordad siempre que yo no soy un experto ni un usuario habitual de estos temas, es más, uno de los motivos por los que he decidido hacer unos cuantos artículos de este tipo es para tener yo también una pequeña referencia en el sitio por si el día de mañana me hiciera falta.

Puesto que tampoco quiero alargarme hasta el infinito con esto, más que nada porque solo estoy yo añadiendo contenidos y si me paso 10 días hablando de un tema quiere decir que hay otros 50 temas olvidados (son los contra de ser el único que agrega contenidos…) de los que no hablaré hasta que termine con el que empecé, bueno que me lio… lo que iba a decir es que vamos a empezar a meternos ya en harinas haciendo nuestro primer batch que soporte parámetros o modificadores… vamos con el!!

El primer código que vamos a ver es muy sencillo, es un batch que nos va a decir lo que hemos escrito, vamos a ver el código:

@echo off

echo Has escrito lo siguiente:
echo %1

Si lo ejecutamos veamos que pasa (el nombre del fichero será test):

C:\temp\batch>test Hola
Has escrito lo siguiente:
Hola

C:\temp\batch>

Como vemos lo repite, pero… vamos a ver un segundo supuesto:

C:\temp\batch>test Hola Pablo
Has escrito lo siguiente:
Hola

C:\temp\batch>

Como vemos no lo repite todo, para que lo hiciera lo deberíamos de haber escrito así:

test “Hola Pablo”

Entre comillas si señores, es como cuando trabajamos con el cmd directamente, exactamente igual, si queremos crear un directorio con un espacio o acceder a un directorio como Archivos de programa deberemos de escribir:

cd “Archivos de programa”

ó

mkdir “Videos del verano”

Ahora lo que toca es que veamos que esta pasando, si nos fijamos en el código hay una línea que es:

echo %1

Y si nos fijamos un poco esta es la que imprime el mensaje que nosotros hemos escrito, esto es porque %1 hace referencia al primer modificador que hemos añadido, %0 por lo que he podido leer por ahí se refiere al propio fichero batch y desde %1 hasta %9 son “modificadores” por lo que en el ejemplo en el que he escrito “test Hola Pablo” para que se hubiese imprimido el código tendría que haber sido el siguiente:

@echo off

echo Has escrito lo siguiente:
echo %1 %2

(more…)

Retomando los ficheros batch – Parte II – Primeras instrucciones básicas

Aquí vuelvo otra vez esta mañana con la intención de empezar a tocar un poco más el tema de los ficheros batch pero ahora ya entrando en materia y como voy a tratar de hacer a partir de ahora trataré de ir desde abajo en todo, porque hasta el momento a sido todo muy desorganizado y me gustaría empezar a tomar un poco de orden aunque reconozco que me costará mucho, así que cuento con todos vosotros para ello.

Empezando por el principio, cuando nosotros estamos trabajando con una ventana del terminal debemos de partir de un punto básico, lo que nosotros vemos es lo que nos muestra el sistema, es decir, el sistema no lo muestra para que el lo sepa lo muestra para que nosotros sepamos que pasa, (son mis explicaciones chungas…) si hacemos un dir el resultado en pantalla sale para que nosotros lo podamos ver y podamos trabajar con el, no es para que el sistema no olvide que es lo que contiene el disco duro…

¿Porque digo todo esto? pues tiene un motivo, esto lo digo y comento porque el primer comando o la primera orden que veremos será la orden echo.

echo
Esta orden viene por defecto activada o en ON en nuestro símbolo del sistema y es la que nos va repitiendo cada vez o “va haciendo eco” cada vez que ejecutamos algo mostrándonos eso de "c:\Windows\systema32>"

1. Abrimos una ventana de terminal o cmd
2. Escribimos lo siguiente: @echo off
3. Ejecutamos dir
4. Ejecutamos @echo on

A eso se le llama una ventana de terminal limpita… :D veamos como hacemos todo:

C:\Documents and settings\Usuario>@echo off
dir
 El volumen de la unidad C no tiene etiqueta
 El número de serie del volumen es: elpr-imo1

 Directorio de C:\Documents and settings\Usuario

04/05/2007 00:00 <dir> .
04/05/2007 00:00 <dir> ..
04/05/2007 00:01 <dir> Blog
04/05/2007 00:02 <dir> Videotutoriales
             4 dirs 25.745.457.512 bytes libres
@echo on
C:\Documents and settings\Usuario>

Para aclararos mejor he resaltado en un blanco más brillante los comandos que ejecutaremos nosotros y he tratado de reproducir lo mejor que he podido una ventana de terminal típica.
(more…)

Retomando los ficheros .BAT, archivos batch o ficheros por lotes Parte I

Aquí ando de nuevo con el tema de los ficheros .BAT haciendo unas pruebas para contestar una de las preguntas de uno de los lectores/usuarios del blog y me he animado con tanto recordar a ampliar un poco más la información sobre los ficheros BAT, batch o de “procesamiento por lotes”.

En estos momentos estoy trabajando un poco con las variables y aunque me estoy dando cada piñazo de escándalo ahí voy a trancas y barrancas sacando poco a poco todos los problemas revisando apuntes, antiguos ficheros que hice en el pasado y revisando en decenas de Webs…, decir que al final trataré de dejar un buen repertorio de enlaces a otras a webs de forma que podáis ir ampliando tanto la información como os sea necesario.

Buen, aunque sé que en otras ocasiones he tomado el tema voy a tratar en esta ocasión de hacerlo de nuevo y trataré de exponer aquellos puntos que creo me han resultado más útiles a la hora de ir haciendo este pequeño “programita” que se supone que añadirá 10, 100, 1000 o 10000 usuarios a un sistema o dominio…

¿Que hace exactamente un fichero .BAT?

Lo primero que debemos saber es que un fichero batch se dedica a ejecutar una línea tras otra siguiendo las instrucciones que nosotros le damos, por ejemplo, si tenemos un fichero .BAT con el siguiente contenido….

cls
dir |more
dir c: /s |more
dir c: /s *.bat >> c:\listabatc.txt
cls

Bien, si nuestro .bat tiene esto dentro lo que hará será eso, primero ejecutará un cls, luego el “dir |more” después el “dir c: /s |more” y así hasta llegar al último cls, por lo que efectivamente, si estas pensando que lo único que hace es ejecutar cosas que nosotros le decimos estas en lo correcto, no consta de un complejo lenguaje de programación ni cosas así, pero eso si, para sacar el máximo partido de estos deberemos de estudiar bien como decirle las cosas y que ordenes podemos emplear y de que forma.

¿Como creamos un fichero batch?

En principio con cualquier editor de texto tipo notepad aunque yo utilizo el edit de DOS de toda la vida… es por manía, costumbre o como queráis pero la verdad es que funcionalmente es parecido y me recuerda buenos tiempos la pantallita de fondo azul… si lo hacemos con el edit tenemos varias formas pero yo siempre utilizo la misma que seria estando en el símbolo del sistema ejecutando un “edit mifichero.bat” de esta forma se abre el edit y si no hay ningún fichero .bat con ese nombre se creará un nuevo y en blanco listo para que empecemos a encajar las cosas.

En el caso de hacerlo con el notepad simplemente abrimos un notepad (ya sabéis, Windows + R notepad ENTER) escribimos lo que sea y cuando le damos a guardar donde pone tipo que vendrá de fabrica “Documento de texto (*.txt)” hacemos un clic y seleccionamos “Todos los archivos” y en nombre le ponemos un nombre y lo rematamos con ” .bat “ y ya esta, como vemos es muy fácil crear un fichero batch.
(more…)

Exportar el resultado del comando DIR en CMD a Excel, notepad, word o cualquier otro programa

Hola de nuevo a todos, en esta ocasión vamos a ver algo que puede resultar curioso e incluso algo retro, pero es sin duda de gran utilidad en muchas ocasiones y lo mejor es que solo necesitamos un cmd y un notepad, dos aplicaciones que encontraremos en prácticamente cualquier sistema operativo Microsoft Windows.

Muchas veces necesitas listar un directorio y reportar el listado mediante e-mail, podemos utilizarlo para hacer comparaciones o para imprimir la lista de ficheros de trabajo de un departamento en concreto, pero normalmente o bien lo transcribimos o bien tenemos que usar algún tipo de software.

En este vídeo vas a ver lo fácil que es hacer esto con las herramientas propias de tu sistema, sin instalar otros software y sin necesitar mucho tiempo ya que con un poco de práctica en apenas 1 minuto tendremos el listado en el notepad, en open office, Microsoft Offfice o cualquier otra utilidad de edición de texto o que soporte la edición o insercción de texto.
(more…)

Aplicacion BATCH que crea una lista de usuarios para agregar al dominio mediante DSADD

Bueno, llevo un rato bueno metiendole un repaso al batch este asqueroso y la verdad que yo me lo voy a meter en la llave, no es por nada, pero cada vez tiene mejor pinta el desgraciado, ahora le he dado la opción de que definamos nosotros el dominio sin necesidad de abrir el archivo .bat para comodidad de mis lectores vamos, aunque aviso, poco a poco iré agregando nuevas funcionalidades, quien sabe a lo mejor en unos meses he hecho un fichero bat capaz de administrar el solo la red…

No a tanto no llegará pero vamos, que las posibilidades que nos da esto son increibles y eso que yo no me aclaro ni con lejia, bueno señores del jurado os dejo el pedazo de código mágico y tras este la consecuente descarga.

========================================================
@echo off
cls

echo Agregador de usuarios creado por s3v Informatica

echo http://www.s3v-i.com

echo ANTES DE CONTINUAR POR FAVOR
echo INTRODUZCA EL NOMBRE DE SU DOMINIO

echo Se le preguntara por las dos partes del dominio tomando como ejemplo
echo “Microsoft.com”
la primera parte seria “Microsoft” y la segunda “com”
echo No se preocupe por el punto no es necesario para generar el archivo.
goto dominio

:Menu
set var=0
cls

echo Agregador de usuarios creado por s3v Informatica

echo http://www.s3v-i.com

echo 1. Escriba un nombre de usuario para agregarlo y pulse Enter
echo 2. Si el usuario consta de un nombre compuesto pulse ” c ” y despues Enter
echo Ejemplo: Jose Maria
echo 3. Para modificar el dominio al cual se deben agregar los usuarios pulse ” m ”
echo y despues Enter para comprobar el dominio definido pulse ” h ” y Enter
echo Se le preguntará por las dos partes del dominio tomando como ejemplo
echo “Microsoft.com”
la primera parte seria “Microsoft” y la segunda “com”
echo No se preocupe por el punto no es necesario para generar el archivo.
echo 4. Para ver la lista de usuarios ya creados pulse ” v ” y despues Enter
echo 5. Para ver el fichero que despues se utilizara para cargar los usuarios
echo con el comando “dsadd” de forma automatica pulse ” d ” y Enter
echo 5. Pulse ” S ” y despues Enter para salir

set /p var=
if %var%==s goto end
if %var%==v goto listar
if %var%==c goto compuesto
if %var%==0 goto selec

if %var%==m goto dominio
if %var%== d goto verdsadd
if %var%==h goto vdominio
echo CN=%var%,CN=Users,DC=%var3%,DC=%var4% >> usuarios.txt
echo %var% >> listausers.txt
goto Menu
(more…)

Agregador de usuarios a un dominio mediante un archivo BATCH desde Simbolo de sistema

Termino ahora mismito de hacer las ultimas pruebas en mi Windows Vista de un archivo .bat que va a generar dos ficheros txt.

En uno de ellos encontramos los usuarios tal cual los hemos escrito cada uno en una linea mas o menos así:

Jose
Vicente
Manuel
Contable

Y en el otro el fichero que trataremos con dsadd para agregarlos automáticamente al directorio sin mas esfuerzo.
No me voy a alargar mucho, voy a dejaros el codigo del escript y os comento que teneis que modificar dependiendo de vuestro caso (dominio) en negrita los marco, ahí va el codigo:

______________________________________________________________________________
—————————————————————————————–

@echo off
:Menu
set var=0
cls
echo Agregador de usuarios creado por s3v Informatica
echo http://www.s3v-i.com
echo 1. Escriba un nombre de usuario para agregarlo y pulse Enter
echo 2. Si el usuario consta de un nombre compuesto pulse ” c ” y despues Enter
echo Ejemplo: Jose Maria
echo 3. Para ver la lista de usuarios ya creados pulse ” v ” y despues Enter
echo 4. Pulse ” S ” y despues Enter para salir

set /p var=
if %var%==s goto end
if %var%==v goto listar
if %var%==c goto compuesto
if %var%==0 goto selec

echo CN=%var%,CN=Users,DC=dominio,DC=dominio >> usuarios.txt
echo %var% >> listausers.txt
goto Menu

:compuesto
echo Introduzca primer nombre:
set /p var1=
echo Introduzca segundo nombre
set /p var2=

echo CN=%var1%+%var2%,CN=Users,DC=dominio,DC=dominio >> usuarios.txt
echo %var1% %var2% >> listausers.txt
goto Menu

:selec
cls
echo No ha seleccionado ninguna opcion
echo Escriba un nombre de usuario o elija alguna de las opciones
echo disponibles en el Menu Principal
pause > nul
goto menu

:listar
cls
if exist listausers.txt goto listexist
if not exist listausers.txt goto listerror

:listexist
echo Usuarios que se agregaran:
type listausers
.txt |more
echo Pulse una tecla para volver al menu principal.
pause > nul
goto Menu

:listerror
echo No ha agregado ningun usuario todavia
echo Pulse una tecla para volver al menu principal
pause > nul
goto Menu

:End
cls
echo Proceso de creacion de usuarios finalizado con exito
echo A coninuacion podra ver todos los usuarios que ha generado.
type listausers.txt |more

______________________________________________________________________________
—————————————————————————————–

(more…)

El poder del Simbolo de sistema que crea/modifica y se salta directivas en Windows Server 2008 – Video

ws08_logo_hero.jpg

No sabía si titular el artículo El poder del Simbolo de sistema o El lado oscuro del simbolo del sistema y es que como he dicho muuuuuuuchas veces conocer las posibilidades de este nos puede dar ventajas, muchas ventajas….

En este video simplemente creo un usuario sin contraseña a través del simbolo de sistema y se puede ver en el video como la directiva de complejidad, longitud mínima etcétera estan activadas, es mas, hago la prueba de crear el usuario desde “Active directory users and computers” para que se vea que la directiva se esta aplicando.

Una vez creado el usuario en Simbolo de sistema en el que se ve también como la política de contraseñas se aplica, compruebo que realmente esta en Active directory users and computers y después modifico los datos del mismo, esto es algo nuevo ya que en otros articulos como en Crear usuarios y modificar propiedades en 1 segundo mediante archivos .BAT o en este otro Trabajando con el comando NET – Casos prácticos cambiar de grupo a los usuarios hemos visto como cambiamos la pertenencia a grupos pero no modificamos datos del usuario mediante el cmando net user, esta vez hago una modificación para que lo veais.
(more…)