diff --git a/1/ISO/assignments/comandos-dos/comandos-dos.pdf b/1/ISO/assignments/comandos-dos/comandos-dos.pdf index 31766d2..874cfc6 100644 Binary files a/1/ISO/assignments/comandos-dos/comandos-dos.pdf and b/1/ISO/assignments/comandos-dos/comandos-dos.pdf differ diff --git a/1/ISO/assignments/comandos-dos/comandos-dos.tex b/1/ISO/assignments/comandos-dos/comandos-dos.tex index 4012996..df0d850 100644 --- a/1/ISO/assignments/comandos-dos/comandos-dos.tex +++ b/1/ISO/assignments/comandos-dos/comandos-dos.tex @@ -1,5 +1,6 @@ \documentclass[12pt,a4paper]{article} \usepackage[spanish]{babel} +\usepackage{graphicx} \title{Tema IV Ejercicio III: Comandos DOS} \author{Nicolás A. Ortega Froysa} @@ -17,7 +18,7 @@ \begin{tabular}{|l|c|l|c|} \hline {\bf Fecha Última Modificación} & \the\day/\the\month/\the\year & - {\bf Versión/Revisión} & v01r01 \\ \hline + {\bf Versión/Revisión} & v01r02 \\ \hline {\bf Fecha Creación} & \the\day/\the\month/\the\year & \hfill & \hfill \\ \hline {\bf Fecha Finalización} & \the\day/\the\month/\the\year & \hfill & \hfill \\ \hline @@ -34,6 +35,7 @@ {\bf Versión/Revisión} & {\bf Página(s)} & {\bf Descripción} \\ \hline v01r01 & Todas & Creación y elaboración del documento. \\ \hline + v01r02 & 4-7 & Añadir contenidos nuevos. \\ \hline \end{tabular} \end{center} \end{table} @@ -62,7 +64,7 @@ \pagebreak -\section{Manejo de Archivos} +\section{Creación de Archivos y Directorios} Para poder crear carpetas en el {\em shell} de DOS, usamos el comando \texttt{mkdir}. Esto también lo podemos usar para crear todo un {\em path} de directorios, uno dentro de otro, simplemente especificando el camino. De este @@ -75,15 +77,118 @@ modo podemos crear una estructura de directorio con los siguientes comandos: >mkdir carp3 \end{verbatim} -% TODO: Add tree command +\begin{figure} + \centering + \includegraphics[width=0.75\linewidth]{imgs/00-tree.png} + \caption{Comando \texttt{tree} de los archivos.} + \label{fig:tree} +\end{figure} -Para borrar archivos usamos el comando \texttt{del }. Lo cual, para -borrar el archivo \texttt{arch11.txt} que se encuentra en la carpeta: +Si ahora corremos el comando \texttt{tree} dentro de este directorio (que en +nuestro caso se denomina \texttt{practica}) veremos toda la estructura de este +directorio y sus subdirectorios (figura \ref{fig:tree}). + +A partir de aquí podemos añadir archivos dentro de estos directorios. Añadiremos +los archivos siguientes con cualquier editor de texto: + +\begin{itemize} + \item \texttt{arch11.txt} en \texttt{carp11} + \item \texttt{arch12.txt} en \texttt{carp12} + \item \texttt{arch21.txt} en \texttt{carp21} +\end{itemize} + +También se puede crear simplemente un archivo y copiarlo. Esto se podría hacer +con el procedimiento siguiente, creando el primer archivo con el contenido +``test'' y copiándolo a los demás directorios con otro nombre: \begin{verbatim} -carp2\carp21\arch11.txt +# Crear archivo arch11.txt +>echo test >> carp1\carp11\arch11.txt +# Copiar el archivo primero a las distintas carpetas con otro +# nombre +>copy carp1\carp11\arch11.txt carp1\carp12\arch12.txt +>copy carp1\carp11\arch11.txt carp1\carp21\arch21.txt \end{verbatim} +\section{Mover, Copiar, y Renombrar} + +Aquí acabamos de ver el comando \texttt{copy}, que sirve para copiar archivos. +También existe otro que es \texttt{move} para mover los archivos. Estos +funcionan con dos argumentos: el archivo original, y el archivo destino. En el +caso del archivo destino, si se especifica un directorio ya existente en vez de +un nombre de archivo para el nuevo destino, simplemente se copiará/moverá a ese +directorio con el mismo nombre de archivo. + +Como podemos imaginar con lo dicho anteriormente, el comando \texttt{move} se +puede usar para cambiar el nombre de un archivo simplemente especificando el +nuevo nombre como destino. + +Cuando copiamos archivos de un lugar a otro, podemos concatenar el contenido de +dos o más archivos a un nuevo archivo por medio del símbolo \texttt{+}. De este +modo, el próximo comando concatenaría el contenido de \texttt{test0.txt} y +\texttt{test1.txt} en un archivo \texttt{test01.txt}: + +\begin{verbatim} +>copy test0.txt + test1.txt test01.txt +\end{verbatim} + +\section{Borrando Archivos y Directorios} +Para borrar archivos usamos el comando \texttt{del }. Lo cual, para +borrar el archivo \texttt{arch21.txt} podemos correríamos el comando siguiente: + +\begin{verbatim} +>del carp2\carp21\arch21.txt +\end{verbatim} + +Si ya estamos dentro de esa carpeta, podemos simplemente correr \texttt{del +arch21.txt}, o si queremos hacer referencia a él desde la raíz del dispositivo +de almacenamiento (asumiendo que sea \texttt{C:}) correríamos: + +\begin{verbatim} +>del C:\...\carp2\carp21\arch21.txt +\end{verbatim} + +Este comando no es posible usarlo directamente con directorios, ya que está +hecho para trabajar sólo con archivos. Para borrar directorios podemos usar el +otro comando, \texttt{rmdir} que por defecto sólo funcionará si la carpeta está +vacía. Para borrar una carpeta que tiene contenido dentro tendremos que usar el +argumento \texttt{/s} de la forma siguiente. + +\begin{verbatim} +>rmdir /s carp3 +\end{verbatim} + +\section{Modificando los Atributos de un Archivo} +Para poder ver los atributos de los archivos y directorios que hemos creado +podemos usar el comando \texttt{attrib [file]}. Este comando, si le añadimos el +argumento \texttt{/s} se hará de forma recursiva (como vimos con \texttt{rmdir}) +y nos mostrará todos los atributos de todos los archivos en un directorio. Si no +especificamos ningún archivo por defecto mostrará todos los atributos de los +archivos dentro del directorio actual. También podemos usar este mismo comando +para modificar los atributos de un archivo por medio de un \texttt{+x} ó +\texttt{-x} donde \texttt{x} es uno de los siguientes: + +\begin{itemize} + \item \texttt{r}: sólo lectura ({\em read-only}) + \item \texttt{h}: escondido ({\em hidden}) + \item \texttt{s}: sistema ({\em system}) + \item \texttt{a}: archivar ({\em archive}) +\end{itemize} + +\section{Conclusión} +Usando la línea de comandos, también en Windows, nos proveerá más flexibilidad y +poder sin necesidad de navegar un interminable entorno gráfico mal-organizado +para encontrar las opciones que buscamos. En vez de esto, podemos simplemente +usar el comando \texttt{help } para saber qué opciones tenemos para un +comando, y de este modo también podremos finalizar nuestras tareas de una forma +más rápida. Por ejemplo, la creación de los archivos al principio hubiera sido +una tarea de varios minutos si usásemos un programa como {\em NotePad}, pero en +la línea de comandos simplemente corremos un comando por cada archivo. + +En fin, incluso en Windows usar la línea de comandos es más eficiente que usar +el entorno gráfico, lo cual nos dice que seguramente deberían de haberse quedado +mejor con MS-DOS. + \pagebreak \section{Derechos de Autor y Licencia} diff --git a/1/ISO/assignments/comandos-dos/comandos-dos.toc b/1/ISO/assignments/comandos-dos/comandos-dos.toc index cf8626c..78b539f 100644 --- a/1/ISO/assignments/comandos-dos/comandos-dos.toc +++ b/1/ISO/assignments/comandos-dos/comandos-dos.toc @@ -1,4 +1,8 @@ \babel@toc {spanish}{} \contentsline {section}{\numberline {1}Hoja De Control Del Documento}{3}{}% -\contentsline {section}{\numberline {2}Manejo de Archivos}{4}{}% -\contentsline {section}{\numberline {3}Derechos de Autor y Licencia}{5}{}% +\contentsline {section}{\numberline {2}Creación de Archivos y Directorios}{4}{}% +\contentsline {section}{\numberline {3}Mover, Copiar, y Renombrar}{5}{}% +\contentsline {section}{\numberline {4}Borrando Archivos y Directorios}{5}{}% +\contentsline {section}{\numberline {5}Modificando los Atributos de un Archivo}{6}{}% +\contentsline {section}{\numberline {6}Conclusión}{6}{}% +\contentsline {section}{\numberline {7}Derechos de Autor y Licencia}{7}{}%