{"id":1077,"date":"2011-11-30T09:56:51","date_gmt":"2011-11-30T08:56:51","guid":{"rendered":"http:\/\/mukom.mondragon.edu\/ismu\/?p=1077"},"modified":"2011-11-30T09:56:51","modified_gmt":"2011-11-30T08:56:51","slug":"bat-files","status":"publish","type":"post","link":"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/","title":{"rendered":"Bat files"},"content":{"rendered":"<p>Con la llegada de Windows a nuestras vidas, se perdi\u00f3 la costumbre de crear peque\u00f1os ficheros con comandos que nos permit\u00edan ejecutar programas sin recordar una larga lista de par\u00e1metros, o ejcutar una serie de operaciones una detr\u00e1s de otra. Los que empezaron cacharreando con los PCs con los sistemas operativos DOS (MS-DOS, DR-DOS, &#8230;) sabr\u00e1n a lo que me refiero. Y algunos de los que empezaron con Windows tambi\u00e9n, pero la mayor\u00eda pensar\u00e1, \u00bf&#8221;DOS&#8221;? \u00bfqu\u00e9 es eso? \u00bfficheros con comandos para ejecutar programas? (\u00a1Dios! que sensaci\u00f3n de contar historias del abuelo cebolleta)<\/p>\n<p>En fin, supongo que sabr\u00e9is que estoy hablando de los ficheros BATCH. Ficheros con extensi\u00f3n BAT (o CMD en Windows).<\/p>\n<p>Aunque hoy en d\u00eda estemos acostumbrados a mover el cursor con el rat\u00f3n, abrir y cerrar ventanas y hacer click a diestro y siniestro, los ficheros BATCH pueden resultar \u00fatiles para automatizar ciertas cosas. Por ejemplo, un sistema de backup rudimentario.<\/p>\n<blockquote><p>@echo off<br \/>\nc:<br \/>\ncd c:\\backups<br \/>\nmkdir %date:~0,4%%date:~5,2%<br \/>\necho Comenzando copia&#8230;<br \/>\nxcopy \/s c:\\lo_que_quiero_guardar\\*.* c:\\backups\\%date:~0,4%%date:~5,2%<br \/>\necho Terminado.<\/p><\/blockquote>\n<p>Analicemos este ficherillo l\u00ednea a l\u00ednea:<\/p>\n<dl>\n<dt>@echo off<\/dt>\n<dd>Podr\u00edamos no poner esto, pero as\u00ed tengo la excusa para explicarlo :-). Si no se dice lo contrario, al ejecutar un fichero BAT se muestra en pantalla cada una de las l\u00edneas que se va a ejecutar. Con esta l\u00ednea, conseguimos que no se muestren en pantalla esas l\u00edneas (echo off). Pero el &#8220;echo&#8221; no est\u00e1 deshabilitado en esa primera l\u00ednea, por lo que necesitamos &#8220;silenciarlo&#8221;. Por eso se pone la &#8220;@&#8221;. Todas las l\u00edneas que comiencen con ese car\u00e1cter, no se mostrar\u00e1n en pantalla.<\/dd>\n<dt>cd c:\\backups<\/dt>\n<dd>El comando &#8220;cd&#8221; cambia el directorio actual al que le pasemos como par\u00e1metro (en este caso c:\\backups). Este comando no nos cambia de unidad, por lo que hemos tenido que hacerlo previamente (c:).<\/dd>\n<dt>mkdir %date:~0,4%%date:~5,2%<\/dt>\n<dd>El comando &#8220;mkdir&#8221; crea un directorio, que se llamar\u00e1 como el par\u00e1metro que le pasemos. En este caso, no es una ruta completa, por lo que crear\u00e1 el directorio dentro del que nos encontremos. %date% es una variable de entorno que contiene la fecha actual del sistema. Ejecutando &#8220;echo %date%&#8221;, podr\u00e9is ver el valor que tiene. Con los modificadores que le he a\u00f1adido, obtenemos el a\u00f1o (%date:~0,4%) y el mes (%date:~5,2%). En este caso, mi sistema tiene la fecha en euskara, y tendr\u00e9is que comprobar los valores de los modificadores que sirvan para el vuestro. Por cierto, %date:~i,l% devuelve la parte de %date% que comienza en la posici\u00f3n &#8220;i&#8221;, y con una longitud &#8220;l&#8221;.<\/dd>\n<dt>echo Comenzando copia&#8230;<\/dt>\n<dd>En la primera l\u00ednea hemos visto que &#8220;echo&#8221; sirve para que no se muestren en pantalla las operaciones que se van ejecutando, pero tambi\u00e9n lo podemos utilizar para escribir en pantalla un texto.<\/dd>\n<dt>xcopy \/s c:\\lo_que_quiero_guardar\\*.* c:\\backups\\%date:~0,4%%date:~5,2%<\/dt>\n<dd>Esta l\u00ednea es la que hace el backup propiamente dicho. El comando xcopy har\u00e1 la copia del contenido del directorio c:\\lo_que_quiero_guardar (incluyendo subdirectorios) en c:\\backups\\%date:~0,4%%date:~5,2%.<\/dd>\n<dt>echo Terminado.<\/dt>\n<dd>\u00bfNecesito explicar lo que hace esta l\u00ednea? \ud83d\ude09<\/dd>\n<\/dl>\n<p>Como veis, es un ejemplo sencillo, pero creando una tarea programada que se ejecute cada d\u00eda 1 de mes, tendremos una copia mensual del contenido de una carpeta, sin que tengamos que preocuparnos de hacerla nosotros mismos.<\/p>\n<p>Por cierto, si escrib\u00eds &#8220;help&#8221; en una ventana de comandos, ver\u00e9is que hay muchas m\u00e1s operaciones que se pueden utilizar en un fichero BAT. Y si quer\u00e9is saber m\u00e1s sobre esos comandos, escribid &#8220;help comando&#8221; (por ejemplo, help xcopy), para ver todas las opciones de ese comando y una explicaci\u00f3n de su prop\u00f3sito.<\/p>\n<p>Espero que os haya hecho picar la curiosidad, y si os hab\u00e9is quedado con ganas de m\u00e1s, puede que escriba otro post&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Con la llegada de Windows a nuestras vidas, se perdi\u00f3 la costumbre de crear peque\u00f1os ficheros con comandos que nos permit\u00edan ejecutar programas sin recordar una larga lista de par\u00e1metros, o ejcutar una serie de operaciones una detr\u00e1s de otra. Los que empezaron cacharreando con los PCs con los sistemas operativos DOS (MS-DOS, DR-DOS, &#8230;) sabr\u00e1n a lo que me refiero. Y algunos de los que empezaron con Windows tambi\u00e9n, pero la mayor\u00eda pensar\u00e1, \u00bf&#8221;DOS&#8221;? \u00bfqu\u00e9 es eso? \u00bfficheros con comandos para ejecutar programas? (\u00a1Dios! que sensaci\u00f3n de contar historias del abuelo cebolleta) En fin, supongo que sabr\u00e9is que estoy hablando de los ficheros BATCH. Ficheros con extensi\u00f3n BAT (o CMD en Windows). Aunque hoy en d\u00eda estemos acostumbrados a mover el cursor con el rat\u00f3n, abrir y cerrar ventanas y hacer click a diestro y siniestro, los ficheros BATCH..<\/p>\n","protected":false},"author":54,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"series":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Bat files - MUko Informazio Sistemak<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bat files - MUko Informazio Sistemak\" \/>\n<meta property=\"og:description\" content=\"Con la llegada de Windows a nuestras vidas, se perdi\u00f3 la costumbre de crear peque\u00f1os ficheros con comandos que nos permit\u00edan ejecutar programas sin recordar una larga lista de par\u00e1metros, o ejcutar una serie de operaciones una detr\u00e1s de otra. Los que empezaron cacharreando con los PCs con los sistemas operativos DOS (MS-DOS, DR-DOS, &#8230;) sabr\u00e1n a lo que me refiero. Y algunos de los que empezaron con Windows tambi\u00e9n, pero la mayor\u00eda pensar\u00e1, \u00bf&#8221;DOS&#8221;? \u00bfqu\u00e9 es eso? \u00bfficheros con comandos para ejecutar programas? (\u00a1Dios! que sensaci\u00f3n de contar historias del abuelo cebolleta) En fin, supongo que sabr\u00e9is que estoy hablando de los ficheros BATCH. Ficheros con extensi\u00f3n BAT (o CMD en Windows). Aunque hoy en d\u00eda estemos acostumbrados a mover el cursor con el rat\u00f3n, abrir y cerrar ventanas y hacer click a diestro y siniestro, los ficheros BATCH..\" \/>\n<meta property=\"og:url\" content=\"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/\" \/>\n<meta property=\"og:site_name\" content=\"MUko Informazio Sistemak\" \/>\n<meta property=\"article:published_time\" content=\"2011-11-30T08:56:51+00:00\" \/>\n<meta name=\"author\" content=\"mkortabarria\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"mkortabarria\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutua\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/\",\"url\":\"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/\",\"name\":\"Bat files - MUko Informazio Sistemak\",\"isPartOf\":{\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/#website\"},\"datePublished\":\"2011-11-30T08:56:51+00:00\",\"dateModified\":\"2011-11-30T08:56:51+00:00\",\"author\":{\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/#\/schema\/person\/2aa4e7efe1dda2d7baa5410af8fe8224\"},\"breadcrumb\":{\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/#breadcrumb\"},\"inLanguage\":\"eu\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/mukom.mondragon.edu\/ismu\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bat files\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/#website\",\"url\":\"https:\/\/mukom.mondragon.edu\/ismu\/\",\"name\":\"MUko Informazio Sistemak\",\"description\":\"MUko Informazio Sistemetakoen Taldeko Bloga\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/mukom.mondragon.edu\/ismu\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"eu\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/#\/schema\/person\/2aa4e7efe1dda2d7baa5410af8fe8224\",\"name\":\"mkortabarria\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"eu\",\"@id\":\"https:\/\/mukom.mondragon.edu\/ismu\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d697e6fcb938a97f0b4b0cd2a2963bb9?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d697e6fcb938a97f0b4b0cd2a2963bb9?s=96&d=mm&r=g\",\"caption\":\"mkortabarria\"},\"url\":\"https:\/\/mukom.mondragon.edu\/ismu\/author\/mkortabarria\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Bat files - MUko Informazio Sistemak","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Bat files - MUko Informazio Sistemak","og_description":"Con la llegada de Windows a nuestras vidas, se perdi\u00f3 la costumbre de crear peque\u00f1os ficheros con comandos que nos permit\u00edan ejecutar programas sin recordar una larga lista de par\u00e1metros, o ejcutar una serie de operaciones una detr\u00e1s de otra. Los que empezaron cacharreando con los PCs con los sistemas operativos DOS (MS-DOS, DR-DOS, &#8230;) sabr\u00e1n a lo que me refiero. Y algunos de los que empezaron con Windows tambi\u00e9n, pero la mayor\u00eda pensar\u00e1, \u00bf&#8221;DOS&#8221;? \u00bfqu\u00e9 es eso? \u00bfficheros con comandos para ejecutar programas? (\u00a1Dios! que sensaci\u00f3n de contar historias del abuelo cebolleta) En fin, supongo que sabr\u00e9is que estoy hablando de los ficheros BATCH. Ficheros con extensi\u00f3n BAT (o CMD en Windows). Aunque hoy en d\u00eda estemos acostumbrados a mover el cursor con el rat\u00f3n, abrir y cerrar ventanas y hacer click a diestro y siniestro, los ficheros BATCH..","og_url":"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/","og_site_name":"MUko Informazio Sistemak","article_published_time":"2011-11-30T08:56:51+00:00","author":"mkortabarria","twitter_card":"summary_large_image","twitter_misc":{"Written by":"mkortabarria","Est. reading time":"3 minutua"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/","url":"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/","name":"Bat files - MUko Informazio Sistemak","isPartOf":{"@id":"https:\/\/mukom.mondragon.edu\/ismu\/#website"},"datePublished":"2011-11-30T08:56:51+00:00","dateModified":"2011-11-30T08:56:51+00:00","author":{"@id":"https:\/\/mukom.mondragon.edu\/ismu\/#\/schema\/person\/2aa4e7efe1dda2d7baa5410af8fe8224"},"breadcrumb":{"@id":"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/#breadcrumb"},"inLanguage":"eu","potentialAction":[{"@type":"ReadAction","target":["https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/mukom.mondragon.edu\/ismu\/2011\/11\/30\/bat-files\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/mukom.mondragon.edu\/ismu\/"},{"@type":"ListItem","position":2,"name":"Bat files"}]},{"@type":"WebSite","@id":"https:\/\/mukom.mondragon.edu\/ismu\/#website","url":"https:\/\/mukom.mondragon.edu\/ismu\/","name":"MUko Informazio Sistemak","description":"MUko Informazio Sistemetakoen Taldeko Bloga","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/mukom.mondragon.edu\/ismu\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"eu"},{"@type":"Person","@id":"https:\/\/mukom.mondragon.edu\/ismu\/#\/schema\/person\/2aa4e7efe1dda2d7baa5410af8fe8224","name":"mkortabarria","image":{"@type":"ImageObject","inLanguage":"eu","@id":"https:\/\/mukom.mondragon.edu\/ismu\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/d697e6fcb938a97f0b4b0cd2a2963bb9?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d697e6fcb938a97f0b4b0cd2a2963bb9?s=96&d=mm&r=g","caption":"mkortabarria"},"url":"https:\/\/mukom.mondragon.edu\/ismu\/author\/mkortabarria\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/posts\/1077"}],"collection":[{"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/users\/54"}],"replies":[{"embeddable":true,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/comments?post=1077"}],"version-history":[{"count":9,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/posts\/1077\/revisions"}],"predecessor-version":[{"id":1086,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/posts\/1077\/revisions\/1086"}],"wp:attachment":[{"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/media?parent=1077"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/categories?post=1077"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/tags?post=1077"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/mukom.mondragon.edu\/ismu\/wp-json\/wp\/v2\/series?post=1077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}