Introducción a Terminal y Línea de Comandos
Introducción:
La línea de comandos es un método que permite a los usuarios dar instrucciones a algún programa informático por medio de una línea de texto simple, permite ejecutar tareas tales como configuracion, edicion de texto, compilar código y ejecutar herramientas propias del sistema operativo.
Cada sistema operativo tiene su linea de comandos y se denomina de manera diferente, para linux y MAC se denomina Terminal y se encuentra como “Terminal” y en Windows Linea de Comandos, y tiene dos versiones “cmd” (antigua) o “Powe Shell”
La ayuda sobre todos los comandos se pueden encontrar utilizando el comando “man” (man [comando]) o con el modificador “–help” ([comando] --help).
Diccionario de uso de manual:
[archivo]: Archivo sobre el que se ejecutara el parametro.
[ruta]: Ruta en la que se ejecutara el parametro, o a almacenar los resultados.
[modificadores]: variables que determinan el comportamiento del comando a ejecutar.
[parametros]: texto que determina los resultados del comando.
Ventajas de la terminal:
Menor uso de memoria de sistema ya que no hay una interfaz gráfica
Ahorras de tiempo puesto que los procesos se ejecutan de manera agil.
Tareas con prioridad respecto a los otros programas.
Atajos de teclado (Shorcuts) de la temrinal:
“Control + l” Limpiar la pantalla.
“Control + r” Buscar comandos usados anteriormente.
“Control + c” Detiene el comando actualmente en curso.
“tabulador” Autocompleta lo que se esta escribiendo con la informacion de la carpeta actual.
Operadores entre comandos:
El simbolo “;” ejecuta los comandos de manera consecutiva (ver “Combinados.txt” para mas informacion).
El simbolo “>” envia informacion de la salida del comando a un archivo sobreescribiendo cualquier informacion previamente almacenada (ver “Imprimir en Archivo.txt” para mas informacion).
El simbolo “>>” envia informacion de la salida del comando a un archivo concatenadolo con la informacion previa (ver “Imprimir en Archivo.txt” para mas informacion).
El simbolo “<” utiliaza la informacion de un archivo para la ejecusion del comando.
El simbolo “|” (Pipe) ejecuta un comando encadenado el resultado “standard output” del anterior (ver “Combinados.txt” para mas informacion).
Streams de salida:
Los streams son variables que representan los parametros de entrada y salida de los comandos y se utilizan para importar y exportar las salidas de los mismos, son los siguietes:
STDIN Standard Input. Parametro de entrada.
STDOUT Standard Output. Es la salida por defecto.
STDERR Standard Error. Es la salida en caso suceda un error.
Comandos:
Los comandos en su mayor parte son realmente pequeños programas incorporados en el sistema operativo, en su mayoria vienen dados con la siguiente sintaxis:
[comando] [ruta] -[modificadores] [parametros]
A tener en cuenta:
Los modificadores van precedidos del simbolo “-” y se pueden ingresar juntos utilizando un solo “-” de la siguiente manera:
[comando] -[modificadores1] -[modificadores2] = [comando] -[modificadores1][modificadores2]
El punto . es el directorio actual.
El doble punto … es el directorio padre (anterior).
El simbolo “~” sirve para ir a mi carpeta personal (home).
Lista de comandos del curso
************************************************** Varios **************************************************
Comando “man”:
Desplega una descripcion del comando indicado (uso, parametros y argumentos).
Sintaxis:
man [comando]
Ejemplos:
man cd *muestra la ayuda referente al comando “cd”
Modificadores:
Este comando no tiene modificadores
Comando "which":
Imprime en pantalla la ruta del ejecutable del comando indicado.
Sintaxis:
which [comando]
Ejemplos:
wich ls *muestra la ruta en la que se encuentra el comando ls.
Modificadores:
ver mas con el comando --help
Comando "alias":
Crea un "nuevo comando" a partir de otros existentes y sus modificadores, util para crear secuencias de comandos y ejecutarlos en uno solo.
Cada vez que abrimos la terminal se ejecuta un programa llamado .bash_profile que es una serie de comandos que da de alta unas variables.
Sintaxis:
alias [nuevo_comando]="[comando] -[modificadores] [parametros]"
Ejemplos:
alias ll="ls -lh" *crea el comando "ll" que ejecutara el comando ls con los moificadores -l y -h.
ll -a *ejecuta el alias ll (creado arriba) y adiciona el parametro -a.
Modificadores:
ver mas con el comando --help
************************************************** Archivos **************************************************
Comando “ls”:
Crea una lista las capetas y archivos que hay en el directorio seleccionado
Sintaxis:
ls [ruta] -[modificadores] [parametros]
Ejemplos:
ls -lh *ver objetos en el directorio actual estructurados de manera ordenada
ls usr/bin | wc -l *cuenta cantidad de objetos en el directorio “usr/bin”
Modificadores:
-l lista las capetas y archivos con su información básica
-h ver y ordenar la información de forma que sea facil de entender (para humanos)
-a ver archivos ocultos
ver mas con el comando --help
Comando "pwd":
Muestra el directorio en el que se ejecuta el comando, util en los casos en los que el "Prompt" no indica la ruta.
Sintaxis:
pwd
Modificadores:
Este comando no tiene modificadores
Comando "cd":
Navega por los directorios del sistema.
Sintaxis:
cd [ruta]
Ejemplos:
cd .. *retrocede un directorio.
cd ~ *se mueve al directorio "home".
Modificadores:
ver mas con el comando --help
Comando "mkdir":
Crear una carpeta si no existe.
Sintaxis:
mkdir -[modificadores] [nombre_carpeta]
Ejemplos:
mkdir uauario *crea carpeta llamada "usuario"
Modificadores:
ver mas con el comando --help
Comando "touch":
Crea un archivo si no existe, de lo contrario cambia la fecha de modificación (el argumento "{1, 2, 3}.txt" crea varios archivos de texto).
Sintaxis:
touch -[modificadores] [nombre_archivo]
Ejemplos:
touch uauario.txt *crea un archivo de texto llamado "usuario"
Modificadores:
ver mas con el comando --help
Comando "mv":
Mueve y/o renombra el archivo indicado alojandolo en una ruta destino.
Sintaxis:
mv [ruta/archivo_origen] [ruta/archivo_destino]
Ejemplos:
mv archivo.txt C:/ *mueve el archivo archivo.txt desde la ruta actual a la ubicacion "C:/"
mv archivo.txt nuevo.txt *renombra el archivo sin moverlo.
Modificadores:
ver mas con el comando --help
Comando "cp":
Crea una copia del archivo indicado alojandolo en una ruta destino.
Sintaxis:
cp [ruta/archivo] [ruta/archivo_destino]
Ejemplos:
cp archivo.txt C:/ *crea una copia del archivo archivo.txt que se encuentra en la ruta actual a la ubicacion "C:/"
Modificadores:
ver mas con el comando --help
Comando "rm":
Elimina el archivo indicado
Sintaxis:
rm -[modificadores] [nombre_archivo]
rm -rf [directorio]
Ejemplos:
mv c:/archivo.txt *elimina el archivo "archivo.txt" ubicado en "C:/"
rm -rf ejercicio *elimina un directorio/carpeta "ejercicio" recursivamente.
Modificadores:
-r: remover directorio y contenido de manera recursiva.
-f: ignora archivos no existentes y argumentos, no pregunta.
ver mas con el comando --help
Comandos "pushd" y "popd":
navegar entre dos directorios fácilmente.
Sintaxis:
pushd [directorio_a_guardar]
popd
Ejemplos:
pushd . *guarda en la pila el directorio actual "."
popd *vuelve desde el directorio actual al ultimo directorio guardado en la pila.
Modificadores:
ver mas con el comando --help
Comando "open":
Abrir el archivo indicado, en windows se utiliza "start"
Sintaxis:
open -[modificadores] [ruta_archivo]
Ejemplos:
open archivo.txt *abre el archivo archivo.txt utilizando el programa por defecto.
Modificadores:
ver mas con el comando --help
Comando "less":
Ver las primeras líneas de un archivo, en windows se utiliza "more"
Sintaxis:
less -[modificadores] [ruta_archivo]
Ejemplos:
less archivo.txt *muestra las primeras lineas, para avanzar linea presionar "enter", para ver la siguiente página utilizar "espacio".
Modificadores:
ver mas con el comando --help
Comando "cat":
Imprimir todo el contenido de un archivo en pantalla.
Sintaxis:
cat -[modificadores] [ruta_archivo]
Ejemplos:
cat -v C:/archivo.txt *imprime el contenido del archivo "archivo.txt" en la ubicacion "c:/" mostrando los caracteres no imprimibles.
Modificadores:
ver mas con el comando --help
Comando "tail":
muestra las últimas líneas de un archivo (10 por defecto)
Sintaxis:
tail -[modificadores] [archivo]
Ejemplos:
tail C:/archivo.txt *imprime el contenido del archivo "archivo.txt" en la ubicacion "c:/"
Modificadores:
-[número]: pedir una cantidad diferente de líneas.
-f: muestra en tiempo real las ultimas lineas del archivo.
ver mas con el comando --help
Comando "ln":
Crea un acceso directo (alias) que apunta a un directorio (se recomienda usar siempre el modificador "s")
Sintaxis:
ln [ruta] -[modificadores] [alias]
Ejemplos:
ls -s C:/carpeta alias_file *Crea un acceso en memoria llamado "alias_file" para la carpeta "C:/carpeta".
cd alias_file *ingresa a la direccion "C:/carpeta" segun la linea anterior
Modificadores:
-s: link simbolico, si no se usa este parámetro con rm se elimina el directorio original.
ver mas con el comando --help
************************************************** Sistema **************************************************
Comando “top”:
Ver todos los procesos que están corriendo en la computadora de manera interactiva. Es decir, la lista de procesos se va actualizando.
Comando unico de linux.
Sintaxis:
top
Modificadores:
este comando no cuenta con modificadores.
Comando "ps":
Muestra los procesos que se están ejecutando y desde donde vienen, este comando no es interactivo.
Sintaxis:
ps -[modificadores]
Ejemplos:
ps -Wa *muestra los procesos de windows de todos los usuarios
Modificadores:
-W: muestra los procesos de windows
-a: muestra todos los procesos relacionados
ver mas con el comando --help
Comando "kill":
Elimina "cerrado forzado" el proceso del sistema seleccionado.
Sintaxis:
kill -[modificadores] [id_proceso]
Ejemplos:
kill -9 17056 *cierra el proceso 17056.
Modificadores:
ver mas con el comando --help
Comando "uptime":
Muestra cuánto tiempo lleva prendida la computadora, cuántos usuarios se han logueado y la carga promedio.
Sintaxis:
uptime -[modificadores]
Modificadores:
ver mas con el comando --help o /?
Comando "whoami":
Muestra el nombre de usuario de la cesion actual.
Sintaxis:
whoami -[modificadores]
Modificadores:
ver mas con el comando --help
Comando "date":
Muestra la fecha actual.
Sintaxis:
date -[modificadores]
Modificadores:
ver mas con el comando --help
Comando "time":
Muestra el tiempo del procesador
Sintaxis:
time
Modificadores:
Este comando no tiene modificadores.
************************************************** Herramientas (Power Tools) **************************************************
Comando “grep”:
Encuentra cadenas de caracteres dentro del todos los archivos de la ruta relacionada, con expresiones regulares.
Sintaxis:
grep -[modificadores] [expresion] [archivo]
Ejemplos:
grep -r [ruta] -e [expresion] *encuentra los archivos en los que encuentra la “expresion” dentro de la “ruta” mediante el metodo recursivo
Modificadores:
-r: que sea recursivo
-n: numero de linea donde se encuentra la palabra en el archivo
-e: expresion regular
-i: no importa si es mayuscula o minuscula
-v: muestra solo los resultados que no cumplen con el patrón.
ver mas con el comando --help
Comando "find":
Busca en la ruta indicada archivos que concuerden con el parametro indicado.
Sintaxis:
find [ruta] -[modificadores] [expresion]
Ejemplos:
find C:\Curso -name "clase 01" *devuelve la lista de archivos cuyo nombre sea "Clase 01"
Modificadores:
-name: el nombre del archivo (*.js devuelve todos los archivos que terminan con .js)
-type: el tipo de archivo
ver mas con el comando --help
Comando "curl":
Crea
Sintaxis:
curl -[modificadores] [url]
Modificadores:
ver mas con el comando --help
Comando "zip":
Comprime el archivo o los archivos de la ruta selecionada.
Sintaxis:
zip [nombre.zip] -[modificadores] [ruta_archivo]
Ejemplos:
zip Prueba C:\Curso *comprime todos los archivos de la ruta "C:\Curso"
Modificadores:
ver mas con el comando --help
Comando "upzip":
Descomprime el archivo en la ruta actual de la terminal.
Sintaxis:
upzip -[modificadores] [ruta_archivo]
Ejemplos:
zip Prueba *descomprime todos los archivos del zip en la ruta actual.
Modificadores:
ver mas con el comando --help
tar es un comando similar a zip, junta varios archivos en uno solo sin comprimirlos. Después se le dicta un algoritmo de compresión, que es zip.
cfz [archivo.tar.gz] junta y comprime
xfz [archivo .tar.gz] descomprime
Comando "du":
Muestra la cantidad de espacio usado por los archivos en un directorio.
Sintaxis:
du -[modificadores] [ruta]
Ejemplos:
du -h .. *muestra la lista el peso de cada carpeta/subcarpeta y el de los archivos en la misma
Modificadores:
-h muestra el output de una manera que se pueda leer mejor.
-d [numero] nivel de profundidad. Cuántos niveles baja de carpeta.
ver mas con el comando --help
Comando "crontab":
Abre el editor del programa cron para editar la ejecusion programada de scripts del usuario (Ver "Ejec. Scripts Programados.txt" para informacion complementaria).
Sintaxis:
crontab
Modificadores:
-l muestra la lista de scripts de crontab
-e editar la tabla crontab. Con esto se pueden agregar más scripts
ver mas con el comando --help
Comando "chmod":
Permite cambiar los permisos a un archivo (ver "Permisos de Archivos.txt" para informacion complementaria).
Sintaxis:
chmod -[modificadores] [No_Permisos] [archivo]
Ejemplos:
$ chmod 750 archivo.txt *asigna permisos 750 (ver Com. Permisos.txr) para el archivo "archivo.txt"
Modificadores:
ver mas con el comando --help
Comando "sudo":
Ejecutar un comando o script como super usuario.
Sintaxis:
sudo [script/comando]
Modificadores:
este comando no tiene modificadores.
¡Gracias! También puedes hacer tus aportes en la clase sobre comandos.