Comandos básicos para Linux para Ubuntu, Debian, Centos, MacOS y otros

Comandos básicos para Linux para Ubuntu, Debian, Centos, MacOS y otros

 

En este artículo veremos los comandos más básicos para usar en un sistema operativo Linux. Ya sea Ubuntu, Debian, Centos, incluso en macOS... Cualquiera basado en Unix podrá ejecutarlos. Para algunos comandos hay ligeras variaciones. Pero no tendrás problema con estos básicos.

 

 

Comando Básicos de Linux para Ubuntu - Centos o Debian entre otros

Échale un ojo a estos comandos, si tienes dudas, al final te he dejado una web donde podrás poner el comando en cuestión y te devolverá una explicación detallada. Eso sí, en inglés por supuesto. Como la mayoría de comandos.

 

¿Para qué distribuciones de linux funcionan estos comandos?

Estos comandos al ser tan básicos funcionan para casi cualquier distribución basada en Unix, incluido macOS si.

Por lo que podemos decir que estos comandos sirven para Ubuntu, Debian y Mac. ¿A qué esperas para probarlos?

 

 Gnulinux.svg

 

Lista de comandos para Linux

cd ~ ➜ Cambia el directorio al de usuario

cd .. ➜ vuelve al directorio superior

ls ➜ Lista el contenido de un directorio (por defecto en orden alfabético) ($ls -ld)

ls -h ➜ Formatos legibles por seres humanos --block-size=M ➜ Muestra en MB

ls -F ➜ Muestra si es un directorio “/”, ejecutable”*” o FIFO “|” 

ls -R ➜ Recursivamente -o ➜ Los cuenta

ls -a ➜ Incluye los ocultos -ls .* ➜ Muestra solo archivos ocultos

ls -i ➜  Muestra el nodo-i asociado a cada fichero

ls -r ➜ Invierte el orden.

ls -t ➜ Clasifica por la marca de tiempo mostrada

ls -u ➜ Clasifica por fecha de último acceso, primero el accedido en menos tiempo

ls -1 ➜ Salida en una sola columna ls -1 * // ls -x *

ls -o ➜ No muestra el grupo al que pertenece cada fichero $ls -lG 

ls -S ➜ Clasifica por tamaño, de mayor a menor, (-r) inverte el orden

ls -X ➜ Ordena los ficheros por su extension

ls -n ➜ Cambia el nombre del usuario por su UID

ls -s ➜ Muestra el tamaño de cada fichero en bloques de 1024 bytes

ls -v ➜ Ordena de acuerdo a la version de los ficheros, !!es decir por su número!!

ls -w ➜ Asume que la pantalla tiene x cols de ancho ls -w 40 ➜ tres columnas + o - 

ls -l /dev/sda* ➜  Muestra las particiones del disco duro

ls -sh .bash_history ➜ Tamaño del fichero(s)

ls -1 | wc -l ➜ Contar ficheros de un directorio ls -1a | wc -l ➜ (ocultos tambien)

ls -d */ ➜ Muestra solo los directorios  ls -d b*/ ➜ Directorios que empiezan por b 

 

ls -l ➜ Listado extendido  ➜ permisos del fichero, número de enlaces que tiene, nombre del propietario, grupo al  que pertenece, tamaño (en bytes), marca de tiempo, y nombre 

De forma predeterminada, la marca de tiempo que se muestra es la de la última modificación; las opciones -c y -u seleccionan las otras dos que hay.  Para ficheros especiales de dispositivo el campo de tamaño se reemplaza comúnmente por los números de dispositivo mayor y menor.

ls -d- ➜ Directorio -l- ➜ Enlace -c- ➜ Fichero especial(caracteres) -b- ➜ Fichero especial(bloques) -s-➜  Socket -p- ➜ Tuberia

ls -lShr ➜ Muestra una lista de los ficheros de una carpeta ordenados por tamaño (los mas grandes al final)

tree ➜ Muestra el arbol de directorios (por instalar)

cp -b ➜ Crea un archivo backup en el destino en caso de existan archivos con el mismo nombre. Con $cp -b -S backup ➜ Añade la palabra backup a los archivos de backup creados creados

cp -u (Update) El comando cp en Linux no copia un archivo o directorio a un destino si este destino tiene la misma fecha de modificación o una fecha de modificación posterior comparándola con el archivo o directorio que queremos mover.

cp -iv ➜ Pide confirmación y muestra lo que está ejecutando

cp -rv “archivos encontrados con find” “directorio” | tee archivos.copiados.txt ➜ Copia muchos archivos (salida de un comando find . ) y vemos el proceso y los archivos que ya ha copiado, sirve para copiar muchas películas, por ejemplo

gcp ➜ cp con barra de progreso (no sobreescribe archivos en destino, para ello -f)

pwd ➜ Muestra el directorio en el que estas 

PS1=$PWD ➜ Cambia el prompt al directorio actual

mkdir ➜ Crea directorios (vacios)  $mkdir -p /hola/buenos/dias ➜Crea un arbol de directorios

rmdir ➜ Borra directorios vacios  $rm -i nos pide confirmación y -v muestra lo que hace el comando. rmdir -rf ➜ Borra directorios que no esten vacios, sin pedir confirmación.

alias “rm=rm -iv”  en ~/.bashrc ➜ Cambia el rm para que siempre que se ejecute haga un rm -iv unalias ➜ Borra un alias

alias “rm=rm -iv” ➜ Cambia el rm para que siempre que se ejecute rm a secas, haga un rm -iv. Con -iv nos pide confirmación y muestra lo que hace el comando.

rm -f ➜ Borra recursivamente directorios y carpetas y sin pedir confirmación

-r, Procesa subdirectorios de forma recursiva.

-i, Pide confirmación para cada borrado.

-f, Forzado, ignora archivos no existentes y elimina cualquier aviso de confirmación.

-v, Muestra el nombre de cada fichero antes de borrarlo

mv ➜ Renombrar y mover ficheros y carpetas

Este comando quita los espacios y renombra los archivos de toda la carpeta añadiendo la extensión .mp3 ➜ $ for FILE in * ; do NEWFILE=`echo $FILE | sed 's/ /_/g'` ; echo “$FILE sera renombrado como $NEWFILE.mp3” ; mv “$FILE”  “$NEWFILE.mp3” ; done

Eliminar un sufijo ➜ for FILE in *.txt ; do NEWFILE=`echo $FILE | sed 's/.txt$//'` ; mv $FILE $NEWFILE ; done

tee file{0..9}.txt ➜ Crea un fichero y lo editamos desde stin

echo “hola” | tee hola.txt ➜ Muestra la salida del comando echo por consola y también lo envía al archivo hola.txt

ls | tee -a fichero.txt ➜ Muestra la salida de ls por consola y envía el resultado a fichero.txt

ln ➜ Crea un enlace hacia un fichero o directorio -s enlace soft, simbolico unlink enlace ➜ Elimina el enlace simbolico ln -s /media/rocky/Datos Datos

cleanlinks ➜ Limpia enlaces simbolicos que no tengan relacion y tambien remueve directorios vacios

cat ➜ Muestra el contenido de un fichero  $cat fichero1 fichero2

cat -n ➜ Con el número de lineas $cat -s ➜ omite lineas repetidas

cat “fichero.txt” >> “copia_fichero.txt” ➜ Copia el fichero

cat access.log | awk {print $7} | sort uniq | less | tail ➜ Muestra el campo 7 del fichero 

cat /etc/passwd | cut -d: -f1 | sort ➜ Muestra el primer campo del fichero (usuarios)

cat /etc/passwd | cut -d: -f1 | xargs echo "Los usuarios son: " ➜ Mostramos todos los usuarios.

cat * > contactos.txt ➜ Copia todos los ficheros en contactos.txt (Concatena ficheros)

cat /proc/cpuinfo ➜ Muestra informacion de los procesos y del sistema

cat /etc/passwd | wc -l ➜ Cuenta las lineas del fichero

cat /et/null > fichero.txt ➜ Borrar/vaciar el contenido de un fichero

cat > fichero.txt➜ Esto es una forma muy rudimentaria de editar un fichero sin tener un editor. Para terminar pulsamos Ctrl+D.

tac ➜ Muestra un fichero al reves

uniq ➜ Muestra o elimina lineas repetidas -dc ➜ Muestra las lineas repetidas

duff -r ➜ Busca archivos duplicados|repetidos

more ➜ Muestra un fichero paginado zmore ➜ para archivos comprimidos

less ➜ Muestra un fichero paginado(mejor que more) zless ➜ para archivos comprimidos

head ➜ Muestra el principio de un fichero (10 lineas)

head -n 20 fich ➜ muestra las 20 primeras lineas.

head -c 100 fic ➜ muestra los 100 primeros bytes.

tail ➜ Muestra el final de un fichero (10 lineas)

tail -n 20 fich ➜ muestra las 20 últimas lineas.

tail -f ➜Muestra las últimas 10 lineas del fichero en tiempo real igual que $tailf

mc ➜ Ejecuta Midnight Commander (sin instalar)

locate -i ➜ Busca un fichero en la base de datos  $locate -i “*.jpg”  

echo ➜ Visualiza un texto por pantalla  -e ➜ Activa la interpretación de caracteres de escape

\n ➜ nueva linea \t ➜  tabulador -n ➜ Sin retorno de carro al final

 

Si tienes alguna duda con algún comando en concreto puedes preguntarme dejando un comentario en este mismo artículo. Si tienes muchas dudas o quieres aprender más sobre estos comandos, te dejo esta magnífica web, que lo explican francamente bien: https://explainshell.com

 

Espero que este artículo te haya gustado, estoy seguro de que sí, y de que le irás cogiendo el gustillo a Linux muy pronto, sino se lo has cogido ya ;)