\documentclass[12pt,a4paper]{article} \usepackage[spanish]{babel} \usepackage{graphicx} \usepackage{subcaption} \title{Tema IV Ejercicio I: CMD} \author{Nicolás A. Ortega Froysa} \begin{document} \maketitle \pagebreak \tableofcontents \pagebreak \section{Hoja De Control Del Documento} \begin{table}[h!] \begin{center} \caption{Documento/Archivo} \label{tab:document} \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 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 \end{tabular} \end{center} \end{table} \begin{table}[h!] \begin{center} \caption{Registro De Cambios} \label{tab:registro-cambios} \begin{tabular}{|c|c|c|} \hline {\bf Versión/Revisión} & {\bf Página(s)} & {\bf Descripción} \\ \hline v01r01 & Todas & Creación y elaboración del documento. \\ \hline \end{tabular} \end{center} \end{table} \begin{table}[h!] \begin{center} \caption{Autores Del Documento} \label{tab:autores} \begin{tabular}{|c|c|} \hline {\bf Apellidos, Nombre} & {\bf Curso} \\ \hline Ortega Froysa, Nicolás Andrés & 1 \\ \hline \end{tabular} \end{center} \end{table} \begin{table}[h!] \begin{center} \begin{tabular}{|p{4cm}|p{4cm}|p{4cm}|} \hline {\bf Preparado} & {\bf Revisado} & {\bf Aprobado} \\ \hline Ortega Froysa, Nicolás Andrés & \hfill & \hfill \\ \hline \end{tabular} \end{center} \end{table} \pagebreak \section{Listado de Archivos} \begin{figure} \centering \includegraphics[width=0.75\linewidth]{imgs/00-abrir-cmd.png} \caption{Abierto el símbolo del sistema (CMD).} \label{fig:abrir-cmd} \end{figure} El {\em shell} de Windows lo podemos acceder dando al botón de Windows e introduciendo el texto ``CMD''. Haciendo esto nos encontraremos con una aplicación que se denomina ``Símbolo del sistema''. Al abrir esto nos encontraremos con el {\em shell} clásico de Windows (figura \ref{fig:abrir-cmd}). Como se ve, la línea de entrada muestra un símbolo \texttt{>} precedido por el ruta (i.e.\ {\em path}) de la ubicación actual. Esto último también se puede conocer corriendo el comando \texttt{cd} sin argumentos. Se puede notar también que los directorios de una ruta en el {\em shell} de Windows están separadas por el carácter \texttt{\textbackslash}. Esto es diferente a los sistemas UNIX donde se usa el \texttt{/}, que en el {\em shell} de Windows se usa para los argumentos de comando; lo que en un sistema se usaría el \texttt{-}. Podemos ver los archivos de un directorio usando el comando \texttt{dir }. Si no se especifica el directorio, se mostrarán los archivos del directorio actual (figura \ref{fig:dir}). Esto comando tiene más argumentos que podemos conocer corriendo el comando \texttt{help dir} (figura \ref{fig:help-dir}). Uno de estos comandos, por ejemplo, es el \texttt{/Q} que nos mostrará cuál es el dueño de un archivo (figura \ref{fig:dir-q}). \begin{figure} \centering \begin{subfigure}[b]{0.45\textwidth} \centering \includegraphics[width=0.95\linewidth]{imgs/01-dir.png} \caption{Uso del comando \texttt{dir}.} \label{fig:dir} \end{subfigure} \hfill \begin{subfigure}[b]{0.45\textwidth} \centering \includegraphics[width=0.95\linewidth]{imgs/02-help-dir.png} \caption{Información de ayuda del comando \texttt{dir}.} \label{fig:help-dir} \end{subfigure} \hfill \begin{subfigure}[b]{0.45\textwidth} \centering \includegraphics[width=0.95\linewidth]{imgs/03-dir-q.png} \caption{Comando \texttt{dir} con información de dueño.} \label{fig:dir-q} \end{subfigure} \caption{El comando \texttt{dir}.} \end{figure} \begin{figure} \end{figure} \section{Navegación} Se puede navegar el sistema de archivos usando el comando \texttt{cd} (i.e.\ {\em change directory}). Con este comando podemos especificar una ruta a un directorio en concreto de forma \texttt{cd } y nos llevará a esa ubicación en el sistema lógico de archivos. Este {\em shell} también nos permite autocompletar rutas usando el tabulador, de manera que si especificas una ruta incompleta y le das al tabulador, intentará completarlo con subdirectorios dentro de ese directorio que tienen esos primeros caracteres. Y como vimos al principio, si no mencionas ningún directorio destino simplemente imprimirá tu ubicación actual. También hay ciertos nombres especiales, en particular \texttt{.} y \texttt{..}, que hacen referencia al directorio actual y superior respectivamente -- e.g.\ el comando \texttt{cd test\textbackslash..} nos traerá realmente al mismo directorio y sería igual que correr \texttt{cd .} en su lugar. Para navegar o especificar rutas podemos usar dos tipos de rutas: absolutas y relativas. Hasta ahora hemos hablado de rutas relativas, que son relativas a la ubicación actual del usuario en sistema de archivos. Las rutas absolutas nos dicen dónde está un archivo desde la raíz de un sistema de archivos (e.g.\ \texttt{C:}, \texttt{D:}). Eso sí, de por sí sólo podremos navegar con \texttt{cd} dentro de un mismo dispositivo (generalmente \texttt{C:}) salvo si especificamos el argumento \texttt{/D} para acceder a otro dispositivo (figura \ref{fig:relative-absolute}). \begin{figure} \centering \includegraphics[width=0.75\linewidth]{imgs/06-relative-absolute.png} \caption{Cambio de dispositivo usando el argumento \texttt{/d}.} \label{fig:relative-absolute} \end{figure} \section{Sistema de Archivos Windows} Si nos vamos a la ruta raíz del sistema de archivos de nuestro sistema Windows (\texttt{cd C:}) y imprimimos la lista de todos los archivos dentro de este directorio veremos algunos directorios interesantes: Windows, Program Files, y Users (figura \ref{fig:c-drive}). Tienen los siguientes contenidos: \begin{itemize} \item {\bf Windows}: contiene todos los archivos relevantes al sistema operativo en sí de Windows. \item {\bf Program Files}: contiene los archivos que precisan los programas del sistema. A veces existen dos directorios, donde otro tiene añadido ``(x86)'', que contendrá todos los archivos de programas de 32-bits (en sistemas de 64-bits). \item {\bf Users}: aquí se guardan todos los archivos de los usuarios. \end{itemize} \begin{figure} \centering \includegraphics[width=0.75\linewidth]{imgs/05-c-drive.png} \caption{Lista de archivos en \texttt{C:\textbackslash}.} \label{fig:c-drive} \end{figure} Podemos ver todos los archivos que hay dentro de un directorio y sus subdirectorios de manera recursiva usando el comando \texttt{tree }. Si no se especifica el directorio, simplemente mostrará los éstos del directorio actual. \section{Variables de Entorno} Como en cualquier {\em shell} moderno, también podemos hacer uso de variables. En Windows éstos se señalan poniendo un \texttt{\%} al principio y al final del nombre (e.g.\ \texttt{\%MYVAR\%}). Podemos ver todos los variables que están definidos corriendo el comando \texttt{set} (figura \ref{fig:homepath}). Hay algunos variables que son específicos al usuario, como sería \texttt{\%HOMEPATH\%}, que referencia el directorio {\em home} del usuario actual. Podemos usar esto con nuestros comandos de manera que \texttt{cd \%HOMEPATH\%} nos traerá al directorio {\em home} de nuestro usuario. Podemos establecer o sobre escribir éstos por medio también del comando \texttt{set}, corriendo \texttt{set =} (figura \ref{fig:escritorio}). \begin{figure} \centering \begin{subfigure}[b]{0.45\textwidth} \centering \includegraphics[width=0.95\linewidth]{imgs/09-homepath.png} \caption{Lista de variables.} \label{fig:homepath} \end{subfigure} \hfill \begin{subfigure}[b]{0.45\textwidth} \centering \includegraphics[width=0.95\linewidth]{imgs/10-escritorio.png} \caption{Definición de un variable.} \label{fig:escritorio} \end{subfigure} \end{figure} \section{Historial del {\em Shell}} A veces es bueno poder ver el historial de los comandos que hemos corrido en el {\em shell}. En Windows esto se hace por medio del comando \texttt{DOSKEY} junto a la opción \texttt{/h}. Esto nos mostrará todos los comandos que hemos corrido. También podemos guardar esta información a un archivo por medio del {\em pipe} \texttt{>} de la forma \texttt{DOSKEY /h >\ history.txt} (figura \ref{fig:doskey-h}). \begin{figure} \centering \includegraphics[width=0.75\linewidth]{imgs/11-doskey-h.png} \caption{Historial del {\em shell}.} \label{fig:doskey-h} \end{figure} \pagebreak \section{Derechos de Autor y Licencia} Copyright \copyright\ \the\year\ Nicolás A. Ortega Froysa \\ Este documento se distribuye bajo los términos y condiciones de la licencia Creative Commons Attribution No Derivatives 4.0 International. \end{document}