La Interface de línea de comandos (CLI) es un método para interactuar con un programa o sistema operativo de computadora que permite al usuario dar órdenes al programa en forma de lineas de texto sucesivas (líneas de comando).
La CLI es menos usada por el usuario de computadoras promedio que prefiere usar una Interface Gráfica de Usuario (GUI) que ofrece una estética mejorada y una mayor simplificación, a costa de un mayor consumo de recursos computacionales, y, en general, de una reducción de la funcionalidad alcanzable.
La CLI, sin embargo, es preferida por los usuarios avanzados de cómputo dado que ofrece medios más concisos y poderosos para controlar programas o sistemas operativos.
Las órdenes dadas al Shell de linea de comandos comúnmente tiene alguna de las siguientes sintaxis:
- prompt comando parámetro1 parámetro2 parámetro3 ... parámetroN
- prompt comando parámetro1 | comando parámetro2 | comando parámetro3 ... | comando parámetroN | > archivoSalida
Caracter o caracteres que se muestran en la linea de comandos para indicar que está listo para recibir tus órdenes.
usuario@máquina:~$
máquina:~ usuario$
>
>>>
Escribe uno por uno los siguientes comandos mientras explico:
ls (list) es un programa para listar el contenido de la carpeta en la que estamos o directorio de trabajo.
$ ls
$ ls -la
cd (change directory) es un programa para cambiar de directorio dentro del árbol de directorios del sistema.
$ cd
pwd (print working directory) es un pequeño programa que imprime en pantalla la ruta hacia el directorio donde estamos trabajando.
$ pwd
En los sistemas UNIX los archivos están organizados por directorios. Los directorios son archivos especiales que contienen información que permite localizar otros archivos en los dispositivos de almacenamiento. Los directorios pueden contener a su vez otros directorios los cuales se denominan subdirectorios. A la estructura resultante de esta organización se le conoce como estructura de árbol invertido.
- Directorio raíz o root
/
: Es aquel directorio que está sobre todos los directorios.
$ ls /
- Directorio de coneccion
~
: Es un directorio especial que representa el directorio principal de casa usuario.
$ cd
$ ls
$ cd /
$ ls ~
$ cd ~
$ ls
- Directorio de trabajo
.
: El punto representa el directorio en el que estamos parados
$ ls .
- Directorio superior
..
: Dos puntos representa el directorio arriba del que estamos parados
$ ls ..
$ cd ..
$ ls
- Listado en formato largo con
ls -l
:
- Permisos de archivos
tree (arbol) este programa te muestras gráficamente la estructura de archivos como una serie de ramas.
$ cd
$ tree
mkdir (make directory) crea carpetas.
$ cd
$ mkdir bioinformatics_express
$ cd bioinformatics_express
$ ls
wget (www get) Es un programa para descargar archivos de internet.
$ wget "https://raw.githubusercontent.com/hachepunto/bioinformatics/master/data/breastcancer_regulon.sif"
$ wget -O CO2_by_year.txt "https://raw.githubusercontent.com/hachepunto/bioinformatics/master/data/data_carbondioxideyearlyemissions.txt"
$ ls
cat (concatenate) sirve para concatenar archivos uno tras.
$ cat breastcancer_regulon.sif
$ cat breastcancer_regulon.sif CO2_by_year.txt
more Paginador de archivos de texto plano. Este programa imprime en pantalla el contenido de archivos de texto.
$ more CO2_by_year.txt
less es otro paginador para ver archivos.
$ less CO2_by_year.txt
Dentro de less
puedes usar el comando /
para buscar tu país por ejemplo.
Para salir de less
preciona la tecla Q
man (manual) es un programa que muestra los manuales de los programas.
$ man less
Las páginas de manuales son documentación acerca de los comandos y programas que tiene el sistema. Tienen una estructura constante lo que nos ayuda a ubicar la información que necesitamos más facilmente.
$ less -S CO2_by_year.txt
cut Corta por columnas un archivo.
$ cut -f1 CO2_by_year.txt
mv (move) comando que sirve para mover o renombrar y archivo o carpeta.
$ ls -l
Renombrar
$ mv TFs.txt transcriptionFactors.txt
$ ls -l
Mover
$ mkdir factores_de_transcripcion
$ mv transcriptionFactors.txt factores_de_transcripcion/
$ ls
$ ls factores_de_transcripcion/
cp (copiar) Comando que sirve para copiar archivos o carpetas
$ cp CO2_by_year.txt factores_de_transcripcion/
$ ls
$ ls factores_de_transcripcion/
rm (remove) Es el comando que sirve para eliminar archivos o carpetas. No pregunta si sí deseas borrar, hace lo que le indicas.
Borrar archivos
$ rm transcriptionFactors.txt factores_de_transcripcion/transcriptionFactors.txt
Borrar carpetas
$ rm factores_de_transcripcion/
rm: factores_de_transcripcion/: is a directory
$ rm -r factores_de_transcripcion/