Saltar a contenido

Comandos del sistema operativo

Al margen de los comandos Python, cada sistema operativo, Windows, Mac, Linux, etcétera, tiene su propio lenguaje de comandos para realizar tareas. Pero no debemos confundirlo con los comandos de Python.

¿Por que son importantes los comandos del S.O.? En principio, para ejecutar cualquier programa, IDLE o los programas que nosotros escribamos, basta con hacer doble clic sobre ellos. Pero hay situaciones en las que tendremos que recurrir a la ejecución de comandos desde un Terminal del sistema.

Echemos un vistazo a lo más básico.

Forma de ejecutar comandos del S.O.

Básicamente, se pueden ejecutar comandos abriendo una ventana shell del sistema operativo. En Windows, es un programa llamado Símbolo del sistema. Véase Wikipedia. Para abrirlo, escribir "cmd" en el cuadro de búsqueda del escritorio.

En Mac, la consola de comandos es un programa llamado Terminal, que encontraremos en de la carpeta "Aplicaciones >> Utilidades". En Linux, también suele denominarse Terminal.

Al abrir la ventana de consola de comandos, se mostrará un prompt que depende del sistema operativo, y que suele ser un símbolo >, $, % o #. Habitualmente va precedido por el nombre de la carpeta de trabajo actual:

/micarpeta/ >

¿Como es la sintaxis de los comandos? Como hemos dicho, cada sistema tiene su lenguaje de comandos. Podemos encontrar numerosos tutoriales en Internet.

Scripts de comandos

Otra posibilidad es crear un archivo de texto con una secuencia de comandos a ejecutar, como haríamos con los programa Python. En Windows, llevan el sufijo .bat y para ejecutarlos, basta con hacer doble clic sobre ellos.

A este tipo de archivos se les llama scripts. En un Mac, podemos ejecutarlos pulsando sobre ellos con el botón secundario del ratón, y seleccionando Abrir con ... Terminal de comandos.

En Mac/Linux, para ejecutar un script tenemos que asignar permisos de ejecución al archivo. Para ello, abrir el Terminal y ejecutar el comando:

chmod +x /ruta_de_carpetas/nombre_de_archivo

... siendo la ruta de carpetas y el nombre del archivo el que corresponda.

Editores

Para crear scripts y archivos de texto en general, Windows proporciona un editor básico llamado Notepad (bloc de notas). Nos puede servir para este propósito.

Todos los sistemas operativos suelen incluir de serie algún editor sencillo. De todas formas, en Internet existe una amplísima gama de editores que podemos descargar e instalar en nuestro esquipo.

Nótese que ha de tratarse de algún editor de ficheros tipo "plain text", es decir, texto sin más añadidos. Los procesadores de texto del tipo Microsoft Word no nos sirven, ya que insertan en el documento todo tipo de información sobre tipos de letra, márgenes, paginación, imágenes incluidas en el texto, etcétera. Este tipo de programas son aptos para maquetación de publicaciones, no para labores de programación.

Comando para averiguar la versión instalada de Python

En el Terminal del sistema operativo, introducir el comando:

python -version

o bien, dependiendo de como hayamos instalado Python:

python3 -version

Al ejecutar el comando, se mostrará el número de versión. Un mensaje de error indica que no tenemos las herramientas Python en nuestro equipo (o que hay que escribir Python3 en lugar de Python).

Como ejecutar un programa Python

Para ejecutar un programa desde un Terminal de comandos, lo primero es averiguar el nombre de la carpeta donde se encuentra ubicado. Seguidamente introducimos el comando:

python3 /carpeta1/carpeta2/miprograma.py

siendo /carpeta1/carpeta2 la ruta de carpetas. En Windows, llevará la unidad como prefijo y las barras invertidas:

python3 c:\carpeta1\carpeta2\miprograma.py

Ejecutar comandos del S.O. en el shell de IDLE

El shell de IDLE solo permite comandos Python. No confundirlos con los del sistema operativo.

De todas formas, hay un pequeño truco que ya hemos visto. Si ponemos el texto de un comando del sistema en una variable:

texto = "python3 -version"

podemos ejecutarlo desde Python pasándoselo a la función system() del módulo os:

texto = "python3 -version"
import os
os.system(texto)