Comandos Básicos de Linux: Guía para Principiantes
2.1 Comandos Básicos de Linux
Manejo de Directorios
pwd - print working directory
cd - change directory
Por defecto, la secuencia de entrada en linux, nos sitúa en nuestro directorio de entrada o de trabajo (un directorio llamado igual que el usuario, dentro del directorio /home). Pero al igual que otros sistemas operativos podemos cambiar de directorio mediante el mandato cd directorio. Si no introducimos ningún nombre de directorio, el mandato cd, sin argumentos vuelve a nuestro directorio de trabajo. Si queremos volver al directorio de nivel superior basta con utilizar cd ..
Comportamientos comunes:
- Ir al directorio Personal (home):
cd
Que es equivalente a:
cd ~
- Cambiar a un subdirectorio:
cd nombre_directorio
- Volver al directorio anterior (última ubicación)
cd -
- Subir un nivel en el árbol de directorios:
cd ..
- Ir al directorio raíz del sistema:
cd /
El nombre de un fichero o de un directorio se puede referenciar de forma relativa o absoluta.
- Forma relativa: El nombre hace referencia a ficheros o directorios desde el directorio en el que nos encontramos.
- Forma absoluta: El nombre hace referencia a todo el camino desde la raíz. Ejemplo: si nos encontramos en nuestro directorio de entrada y queremos ir al directorio /etc
Relativa: Referencia desde tu ubicación actual (ej. cd Documentos).
Absoluta: Referencia desde la raíz (ej. cd /home/usuario/Documentos).
mkdir - make directory
Para crear un directorio (carpeta) es necesario utilizar la orden mkdir nombresDeDirectorio
- Si queremos crear un solo directorio:
- Si queremos crear varios directorios:
- Crear una estructura de directorios anidados (incluye carpetas padre sino existen)
rmdir - Remove Directory
Para borrar un directorio es necesario utilizar la orden rmdir nombresDeDirectorio, es necesario que ese directorio este vacío. ⚠️ Si el directorio contiene archivos o subdirectorios, rmdir no lo eliminará. En ese caso, se debe usar rm -r, pero recuerda utilizarlo con precaución.
Comandos Básicos
date
Permite consultar la fecha y hora del sistema.
who / whoami
who: este comando muestra los usuarios conectados a la máquina.
whoami: Muestra tu nombre de usuario.
ls (Listar archivos)
Este comando muestra el contenido de un directorio. Este comando tiene varias opciones:
ls: Muestra contenido del directorio actual.
Opciones útiles:
ls -a: Muestra además los archivos ocultos (aquellos cuyo nombe empieza con un ".")
ls -F: para saber que archivos de un directorio son archivos normales, cuales directorios y cuales enlaces. (los que terminan con / = directorio, los que terminan con * = ejecutable -código- y los que terminan con @ son enlaces simbólicos) .
ls -t: Ordena por fecha (más reciente primero).
ls -t -r: muestra primero la información más antigua.
ls -R: muestra toda la información del directorio en el que me encuentro.
ls -l: nos muestra más información (el nombre con sus características) sobre el contenido del del directorio donde me encuentro.
- El primer carácter que nos informa sobre el tipo de información que es:
- los 9 siguientes caracteres nos indican los permisos, estos caracteres se agrupan de tres en tres. Los tres primeros son los permisos para el propietario (r w -), los tres siguientes los permisos para el grupo (r --) y los tres últimos los permisos para el resto de usuarios (---). Los permisos pueden ser de lectura (r), escritura (w) y ejecución (x)
ls -i: Muestra el número de inodo de cada archivo.
touch
Sirve para crear fichero en blanco.
Caracteres comodines
A veces es interesante referenciar ficheros que tengan en su nombre características comunes. “Todos los ficheros que empiezan por la letra c...”. En Linux esto se consigue utilizando caracteres especiales (llamados metacaracteres o comodines) que representan otras cosas:
- El carácter asterisco '*' representa a cualquier cadena de caracteres arbitraria incluyendo la cadena vacía. (para buscar)
- La interrogación '?' representa a cualquier carácter simple. (para buscar)
- Los corchetes '[' ']' pueden contener un grupo o rango de caracteres y corresponden a un carácter simple. (para buscar)
- Las llaves ‘{‘,’}’ deben contener diferentes alternativas, constituidas por un carácter o un grupo de caracteres, separadas todas ellas por comas. (para buscar / crear). Los dos puntos '..' entre {} en expansión de secuencias se usa para generar rangos automáticamente bien sean números o letras. Por ejemplo, vamos a crear varios ficheros:
Visualización de Archivos
cat
La orden cat se utiliza para visualizar sobre la salida estándar el contenido de un fichero. Lógicamente el tipo de ficheros a visualizar debe ser de texto, ya que si utilizamos la orden con un fichero ejecutable la salida sería ilegible. Para visualizar el fichero de texto llamado prueba:
Una aplicación muy útil de cat, es concatenar ficheros. Por ejemplo, si queremos concatenar los dos ficheros anteriores en un nuevo fichero llamado prueba3 bastaría con ejecutar lo siguiente:
more
Una orden alternativa a cat es la orden more que da más control que la anterior, ya que automáticamente lista un fichero y cuando llena la terminal (lista tantas líneas como el tamaño de la terminal) se para, esperando que pulsemos una tecla (intro para continuar mostrando el contenido del fichero línea a línea o el espacio mostrar el contenido hasta que se vuelva a llenar de nuevo la terminal).
more [ opciones] nombre_del_fichero
La orden more tiene varias opciones interesantes:
• Con la opción -n, lista el fichero presentando de n en n líneas y no con el número de líneas que posee nuestra pantalla.
• Con el modificador +n, lista el fichero a partir de la línea n
tail
La orden tail permite visualizar el final de un fichero (por defecto 10 líneas). El formato de este comando es:
tail [-numlineas] nombrefichero
La opción -f del comando tail es increíblemente útil porque te permite seguir los cambios en los archivos en tiempo real. Imagina que tienes un archivo que se está actualizando constantemente, como un archivo de registro (log) de un sistema o una aplicación; con tail -f, no solo verás las últimas líneas existentes, sino que el comando permanecerá activo y mostrará automáticamente cualquier nueva línea que se añada al archivo a medida que suceda. Esto es especialmente práctico para monitorizar la actividad en vivo, diagnosticar problemas o simplemente ver cómo crece un archivo sin tener que abrirlo y cerrarlo repetidamente.
Gestión de Archivos: copia, movimiento y renombrado de ficheros.
cp (Copiar)
Si queremos copiar un fichero utilizamos el mandato cp. Por ejemplo, para copiar el fichero llamado “fichero” al directorio dir1, con el mismo nombre:
Archivos: cp origen destino.
La orden cp también copia directorios. Para esto utilizamos el modificador recursivo –R . Por ejemplo,si queremos copia el directorio dir1 (y todo su contenido) al directorio2
mv (Mover/Renombrar)
El cometido de la orden mv es mover ficheros entre diferentes directorios. Si se usa sobre el mismo directorio el efecto obtenido consiste en cambiar el nombre al fichero. Por ejemplo, cambiamos el nombre del fichero “prueba” por “pruebilla”:
Para mover el fichero “pruebilla” al directorio dir1:
Los permisos del fichero copiado o movido son los mismos que los del fichero original
rm (Eliminar) ⚠️ ¡Mucho cuidado con este comando!
La orden rm suprime un fichero de un directorio o un directorio completo. Con la opción –R borra un directorio con todo su contenido. ¡Ojo! Esta orden es muy peligrosa, utilízala con precaución. Para borrar un fichero:
Para borrar un directorio este tiene que estar vacío o utilizamos la opción -R si queremos borrar el directorio y todo lo que tiene dentro:
Otras Órdenes Útiles para trabajar con ficheros.
sort
Ordena la información de un fichero. Esta orden la podemos utilizar con diferentes formatos:
sort nombre_fichero - muestra el contenido del fichero ordenado
sort -o fich1 fich2 - mete en fich1 el contenido del fich2 ordenado
wc (Contar)
Sirve para contar líneas, palabras y bytes de un fichero.
Muestra esta información de la siguiente forma:
numero de líneas numero de palabras numero de bytes nombre del fichero
wc [opciones] nombrefichero
Opciones de esta orden:
-c - solo muestra el número de bytes
-l - solo muestra el número de líneas
-w - solo muestra el número de palabras
split
El mandato split divide un fichero de texto en partes. La sintaxis es de la forma:
split [-líneas] nombre [prefijo]
División por defecto: el prefijo por defecto es x, y el número de líneas 1000 (crea ficheros xaa, xab, xac, xad... con 1000 líneas cada uno).
Si dividimos nuestro fichero llamado “fichero” en ficheros de 3 líneas, se crean 7 ficheros
cut (recortar)
El mandato cut recorta columnas o campos de un fichero.
La sintaxis en este caso es como sigue:
cut [opciones] nombre
Las opciones pueden ser:
- Cortando columnas. Opción -c
- Cortando campos (por defecto, cut asume que los campos se encuentran separados por tabuladores). Opción –f
- Indicar de forma explícita el carácter usado como separador entre campos. Opción –d
En este ejemplo vemos como se cogen de cada línea del fichero los caracteres que están en la columna 2 y en la 7.
grep (Buscar)
El mandato grep permite realizar búsquedas de líneas que contengan texto que identifique a un objetivo o patrón que se especifica. Se pueden utilizar para extraer información de los archivos, buscar líneas que se relacionen con un elemento particular y para localizar archivos que contengan una palabra clave particular. La forma general del mandato es la siguiente:
grep [opciones] expresión [fichero]
Si se quiere buscar más de una palabra (una frase) separadas por espacios en blanco, o se utilizan caracteres comodín, es necesario encerrar la expresión entre comillas.
Algunas de las opciones de este mandato son:
- -i La búsqueda no es sensible a mayúsculas/minúsculas
- -n Muestra el número de línea donde se ha encontrado la coincidencia y también la línea.
- -l Muestra los nombres de los ficheros, pero no las líneas.
- -v Muestran las líneas donde no se produce la coincidencia.
Aunque los enlaces duros y blandos los vimos en el post anterior merece la pena volver a repasarlos.
El comando ln sirve para crear enlaces.
ln -s f1 simbo1f1 crea un enlace bando (simbólico) llamado simbo1f1 al fichero f1.
Recuerda que los enlaces simbólicos son como los accesos directos en Windows.
ln f1 enla1f1 crea un enlace duro llamado enla1f1 al fichero f1. Los enlaces duros son como diferentes nombres para un mismo archivo. (no valen para directorios)
Conclusión
Estos comandos son esenciales para trabajar en Ubuntu o cualquier distribución Linux. Practícalos en la terminal para familiarizarte con ellos.
No hay comentarios:
Publicar un comentario