Comandos básicos de LINUX
A continuación se verá una lista de comandos básicos de linux los cuales es prácticamente imposible utilizar linux para programar sin saberlos.
Contenido:
- Introducción
- Modo super usuario (sudo)
- Que es APT, usando apt-get
- Mirando dentro de un directorio
- Navegando entre directorios con cd
- Creando un alias en el archivo .bashrc
- Como muevo un archivo o carpeta de lugar? (mv)
- crear un directorio (mkdir)
- copia de archivos y carpetas (cp)
- Permisos en linux
- Donde está instalado? (which)
- Encontrando un archivo con find
Introducción
https://blastcoding.com/comandos-basicos-de-linux/#introduccionParticularmente yo uso Linux-Mint así que todos los comandos aquí escritos también funcionaran para Ubuntu, ya que ambos derivan de Debian (otra distribución de Linux).
Los comandos los probare tal cual antes de ponerlos en una máquina virtual con Linux Mint o Ubuntu.
Es probable que la cantidad de comandos que tiene esta página vaya siendo mayor conforme use comandos nuevos y los considere básicos para el uso de Linux.
Modo super usuario (Sudo)
https://blastcoding.com/comandos-basicos-de-linux/#superusuario_sudoEn Linux se puede usar sudo delante de otro comando para correrlo como super usuario. Su sintaxis seria algo asi:
sudo [comando] [comando option]
Por último si necesitamos estar como administrador todo el tiempo puede correr
sudo -i
Que es APT? usando apt-get
https://blastcoding.com/comandos-basicos-de-linux/#que_es_apt_apt-getAPT(Advance packaging tool) es la forma que tenemos de interactuar con el sistema de packetes de debian. Al poder interactuar atrevés del comando apt-get podemos instalar, desinstalar programas así también como actualizar nuestra versión de Linux o pasarla a una versión más nueva.
Podemos usar la siguiente sintaxis para instalar un programa en linux.
sudo apt-get install [nombreDePrograma]
Si necesita desinstalar el programa por alguna razón, lo puede hacer de la siguiente manera:
sudo apt-get remove [nombreDePrograma]
Ahora bien como sé que programa puedo instalar. Por lo general al ser un usuario nuevo buscara por internet por ejemplo krita y encontrara como instalarlo de forma fácil, incluso es tan facil combo bajarlo de la web y y darle a .deb del programa.
Pero volvamos a consola entonces como busco, un packete para instalar?
eso lo podemos hacer con Search:
sudo apt-get search [nombreDePrograma]
si no encontramos el programa le podemos dar a update para hacerle un update a la lista de paquetes que tenemos.
sudo apt-get update
Mostrar el contenido de un directorio
https://blastcoding.com/comandos-basicos-de-linux/#contenido_de_directorioEn algunas ocasiones necesitamos saber que hay dentro de un directorio que permisos tienen los archivos de mayor peso etc.
dir
https://blastcoding.com/comandos-basicos-de-linux/#dirLa forma más fácil de saber que tiene la carpeta donde estamos es con el comando dir
Veamos otras formas útiles de utilizar dir, como dir -S, dir -A, dir -F.
El comando dir también nos permite ver los archivos ocultos para eso al escribir el comando dir le tenemos que agregar -A.
Ve los archivos ocultos dentro de la carpeta actualdir -A
¿ Qué otras opciones nos permite dir ?
- -F: al agregar -F a continuación de dir nos distinguirá carpetas de archivos agregando / al final.
- -S nos ordenara por tamaño los archivos y directorios
- -l muestra información detallada del archivo tanto los permisos del archivo y que usuario los tiene derecho sobre ellos.
Además de estas opciones tenemos otras pero estas son las principales para mi estas opciones se pueden usar convinadas eljemplo dir -l -S
dir -l -S
ls
https://blastcoding.com/comandos-basicos-de-linux/#lsLista el contenido de un directorio, es idéntico a dir y tiene las mismas opciones que dir.
ls también nos permite saber los permisos que tiene un archivo si utilizamos la flag -l
con ella te dira si es escribible quien es el owner y grupo.
Navegando entre directorios con cd
https://blastcoding.com/comandos-basicos-de-linux/#navegando_directorios_cdTal como puse en el titulo cd nos permite navegar entre los direcotrios, por ejemplo si me encuentro en el directorio ejemplo y quiero entrar a ejemplo/1/ y uno es un directorio deberia usar el comando cd 1.
Como puedo volver de ese directorio? pue para volver podemos usar el comando
cd ..
Con cd también podemos regresar a la carpeta del usuario usando
cd --
También podemos ir a cualquier carpeta poniendo su ruta completa por ejemplo.
cd /var/www/html
Ahora bien, no es muy práctico acordarse de las rutas completas hacia una carpeta ni tampoco escribirlas.
Para resolver esto podemos crear Aliases.
Creando un alias en el archivo .bashrc
https://blastcoding.com/comandos-basicos-de-linux/#creando_alias_bashPara crear un alias primero debemos abrir el archivo bash, para ello debemos de ir a nuestro directorio de usuario
cd --
Luego deberemos abrir el .bashrc esto lo podemos hacer con el programa nano que ya viene con el linux la mayoria de las veces o tambien lo podemos hacer con vim, probablemente necesitemos usar sudo.
/~sudo nano .bashrc
y agregaremos al final del archivo el alias que queremos por ejemplo:
.bashrc filealias sites="cd /var/www/html"
Como puede ver sites
en este ejemplo va a significar la ejecucion de cd /var/www/html
una vez haga sus alias puede guardarlo ctrl + o para guardar ctrl + x para salir.
Mover un archivo de lugar mv
https://blastcoding.com/comandos-basicos-de-linux/#mover_archivo_carpeta_mvPara mover un archivo de lugar linux cuenta con el comando mv, pero no solo nos permite mover el archivo también podemos cambiarle el nombre.
mv [archivo] [destino de archivo]
Crear un directorio (mkdir)
https://blastcoding.com/comandos-basicos-de-linux/#crear_directorio_mkdirEl comando mkdir nos permite crear un directorio segun el path del directorio a crear
Por ejemplo si yo lanzo este comando en consola:
creara un directoriomkdir directory_name
Me creara la carpeta justo donde estoy, pero por el contrario si le especifico el path o la ruta me creara el archivo en esa ruta ejemplo:
mkdir con full pathmkdir /var/www/html/proyectonuevo
me creara el directorio en ese lugar.
Copia de archivos y carpetas (cp)
https://blastcoding.com/comandos-basicos-de-linux/#copia_archivo_carpeta_cpSi en algun momento necesitas copiar algun archivo o carpeta este el comando a utlizar.
cp [path/ruta de archivo] [path/ruta destino]
Por ejemplo si deseo copiar un proyecto de los mis para hacerle cambios y probar algo.
~: cp proyectos/carpetavieja proyectos/carpeta nueva
Permisos en Linux
https://blastcoding.com/comandos-basicos-de-linux/#permisosDarle permisos a un propietario o varios o cuales serán esos permisos es algo bastante habitual en Linux.
Chown
https://blastcoding.com/comandos-basicos-de-linux/#chownDefine quien es el propietario del archivo carpeta o lo que sea, para ser más especifico define quien tiene permisos sobre los archivos o carpetas.
Por ejemplo yo como usuario tengo permisos sobre gran parte de los archivos, pero como super admin tengo acceso a todos.
Esto también define el acceso de los programas como puede ser en el caso de el server apache. En el caso siguiente le dejo a apache el poder hacer cambios a los archivos.
chown www-data:www-data /var/www/html/micarpeta
chmod
https://blastcoding.com/comandos-basicos-de-linux/#chmodCambia los permisos de un archivo o directorio, por ejemplo: permisos de escritura, lectura, ejecución.
chmod usa 3 digitos para saber a quienes le da permiso
- Owner (tú o propietario)
- Group (grupos de otros usuarios a los que tú le das permiso)
- World (cualquiera que tenga acceso)
ejemplo de chmod:
la carpeta o archivo debe de existir dentro del directoriochmod 777 mydocs
como puede ver en el ejemplo anterior le doy permiso a todos de leer escribir y ejecutar
A continuación dejo una tabla de lo que significan los números.
# | Permission | rwx |
---|---|---|
7 | read, write and execute | rwx |
6 | read and write | rw- |
5 | read and execute | r-x |
4 | read only | r– |
3 | write and execute | -wx |
2 | write only | -w- |
1 | execute only | –x |
0 | none | — |
Ademas de esto le podremos aplicar a todos los archivos dentro de una carpeta añadiendole -R luego de los digitos.
Aplica chmod 777 recursivamente a todos los archivos y carpetas dentro de mydocschmod 777 -R mydocs
Hay más para ver sobre chmod pero esto es lo básico.
¿Dónde está instalado? (which)
https://blastcoding.com/comandos-basicos-de-linux/#donde_whichNos permite saber donde está instalado un programa
which firefox
Como podemos ver al correr el comando which firefox nos indica que firefox está instalado en /usr/bin/firefox
Encontrando un archivo o carpeta con find
https://blastcoding.com/comandos-basicos-de-linux/#encontrar_findpuede encontrar una carpeta o archivo directamente usando el comando find.
find [nombre de archivo]
Tal como en la mayoria de los comandos que emos visto find busca en la carpeta en que estamos parados y sus subcarpetas.
Para buscar en el ordenador o pc lo que debe hacer es lo siguiente
find / -name [archivo o carpeta a buscar]
Como puede ver hemos puesto / delante de todo esto significa que empiece a buscar desde ahí.
-name le dice que estamos buscando por nombre
aquí les dejo una lista de los más usados
-type [*] | type para el tipo de archivo |
-name | name para el nombre del archivo |
-size | size para ver el tamaño del archivo |
-empty | archivos vacios |
-user | user para saberel dueño del archivo |
posibles valores de * en -type:
-
b
– block (buffered) special -
c
– character (unbuffered) special -
d
– directory -
p
– named pipe (FIFO) -
f
– regular file -
l
– symbolic link -
s
– socket -
D
– door (Solaris)
Bien veamos varios ejemplos de estos comandos.
find -type f -name '*.png'