Comandos Básicos De Linux

Hola lectores de la ReNaTa, hoy les vamos a mencionar el uso de comandos básicos en Linux, la terminal en sistemas operativos Linux es una herramienta muy eficiente y poderosa, pero hay que saber moverse en ella y mas si no estamos en un ambiente gráfico, para eso veremos los un listado de comandos con ejemplos muy prácticos, comencemos.

Comencemos con comandos que van a ser útiles para movernos en la terminal

cd

del ingles “change directory o cambiar directorio”, nos ayudara a movilizarnos entre directorios

Ejemplo

supongamos que nos queremos cambiar de directorio y abrir el de música, esto lo podemos hacer escribiendo cd musica/

[luisa@luisa ~]$ ls

musica

[luisa@luisa ~]$ cd musica/

sabremos que nos hemos cambiado de directorio ya que la ruta en nuestro usuario ha cambiado de home que se reconoce por una tilde “~” a música, podemos seguir abriendo n cantidad de directorios, siempre y cuando existan.

[luisa@luisa ~]$ cd musica/

[luisa@luisa musica]$ cd pop/

[luisa@luisa pop]$

cd ..

El comando cd .. nos regresa un directorio

Ejemplo si queremos cambia del directorio musica a home solo tenemos que ejecutar cd ..

[luisa@luisa musica]$ cd ..

[luisa@luisa ~]$

pwd

Nos ayuda a saber donde estamos ubicados actualmente, es muy útil cuando no sabes la ruta completa en donde estas

[luisa@luisa pop]$ pwd

/home/luisa/musica/pop

[luisa@luisa pop]$

en este ejemplo se muestra la ruta competa del directorio en donde estamos.

[luisa@luisa VPN]$ pwd

/etc/NetworkManager/VPN

[luisa@luisa VPN]$

Una vez que sabemos movernos en la terminal el siguiente paso es saber listar los archivos asi como también la creación de directorios.

ls

muestra los archivos de un directorio

Ejemplo

[luisa@luisa  ~]$ ls

musica

[luisa@luisa ~]$

En este ejemplo se muestran los archivos que hay en home, que solamente es el directorio música,

pero que pasa si queremos ver los directorios de otro lugar sin cambiar de ruta, se podrá?

Afortunadamente si querido lector, la terminal tiene un alcance maravilloso y esto se puede obtener gracias a las rutas absolutas, pero que son?, SIEMPRE empiezan desde la raíz, es decir la /, y contiene todos los directorios que hay desde la raíz hasta el archivo o directorio que queremos indica

[luisa@luisa ~]$ ls

musica

[luisa@luisa ~]$ ls /etc/NetworkManager/

conf.d

[luisa@luisa ~]$

como se puede observar seguimos en home, pero hemos listado los directorios y archivos que hay en NetworkManager

mkdir

Crear un directorio nuevo es sencillo, solo tecleamos mkdir seguido del nombre del directorio y se creara un directorio en la ruta actual.

Ejemplo

[luisa@luisa ~]$ mkdir comida

[luisa@luisa ~]$ ls

comida

[luisa@luisa ~]$

Estamos ubicados en home lo sabemos porque tenemos la tilde “~” en nuestro usuario, vamos a crear un directorio llamado comida y lo listaremos con ls.

[luisa@luisa ~]$ mkdir comida

[luisa@luisa ~]$ ls

comida

[luisa@luisa ~]$

Fue fácil no?, pero y si queremos crear múltiples carpetas? Como lo podríamos hacer, preguntando al que sabe “man”, nos dice que “-p no error if existing, make parent directories as needed”, el argumento -p nos ayuda a crear n directorios, hay dos formas distintas de crear la primera seria anidada donde se crean directorio dentro de otro directorio así hasta las que se requieran y la segunda crear un director “padre”, donde puede contener n directorios hijos, a continuación se mostraran los ejemplos.

Forma anidada

[luisa@luisa ~]$ mkdir -p dir1/dir2/dir3/dir4

para crear directorios de manera anidada es poner el nombre del directorio seguido de raiz “/”así hasta n directorios.

Forma directorio padre

[luisa@luisa ~]$ mkdir -p dirPadre/{dirHijo1,dirHijo2,dirHijo3}

para crear directorios de esta manera el directorio padre seguido de / y los directorios hijos dentro del paréntesis separadas por una coma.

Importante

no separar el nombre del directorio de la coma, de lo contrario la creara de manera que este al mismo nivel que el directorio padre

cat

El comando cat tiene muchas funciones, pero la mas notable de ellas el la concatenación de caracteres mostrándolas en pantalla, según man

CAT(1)

NAME

cat – concatenate files and print on the standard output

Ejemplo

tenemos un archivo de texto y se quiere saber que contiene

solo con ejecutar cat nombreDelArchivo.extencion sabremos su contenido

[luisa@luisa ~]$ cat texto.txt

touch

Actualiza los registros de fecha y hora, con la fecha y hora actual de los ficheros indicados como argumento. Si el fichero no existe, el comando touch lo crea. Su uso más frecuente es para crear archivos.

Como se puede observar al ejecutar touch seguido del nombre de mi archivo + la exención se crea nuestro archivo y lo podemos observar cuando listemos con ls, touch cuenta con identificadores que nos ayudaran a actualizar los registros de fecha y hora como se mencionaba al inicio, a continuación se mostraran.

[luisa@luisa ~]$ touch miArchivo.txt

-a ambia solamente la fecha de acceso


-c, –no-create no crea ningún fichero


-d, –date=CADENA examina y utiliza CADENA en lugar de la fecha actual


-f no tiene efecto)


-h, –no-dereference afecta a cada enlace simbólico en lugar de a los
ficheros referidos (solamente es útil en sistemas que pueden cambiar el propietario de un enlace simbólico)


-m cambia solamente la fecha de modificación


-r, –reference=FICHERO utiliza la fecha de este FICHERO en lugar de la fecha actual


-t FECHA utiliza [[SS]AA]MMDDhhmm[.ss] en lugar de la fecha actual


–time=PALABRA establece la fecha dada por PALABRA:


PALABRA es access, atime o use: equivale a -a
PALABRA es modify o mtime: equivale a -m

tomado de (man,2017)

Ejemplo

vamos a cambiar la fecha de acceso y modificación de un archivo de texto

para poder ver los cambios en el documento listemos mas detalladamente con “-l”, nos dice que fue creado el 16 de febrero, vamos a cambiarlo al 1 de enero del 2015

[luisa@luisa ~]$ touch -d ‘1 feb 2015’ holamundo.c

echo

-Display a line of text (man, 2017)

El comando echo es un comando sencillo que se encarga de repetir lo que recibe ejemplo

[luisa@luisa ~]$ echo Reserva Nacional De Talentos

Reserva Nacional De Talentos

[luisa@luisa ~]$

pero no hay que subestimar a este comando, tiene múltiples aplicaciones como la creación de archivos de texto, e incluso con texto, es fantástico no!!, veamos otro ejemplo

[luisa@luisa ~]$ echo «Saludos Lectores» > hola.txt

echo va a dirigir todo lo que este en comas “”, al archivo hola.txt, aplicando el comando cat vemos que en verdad paso todo a nuestro archivo, pero ahora podemos seguir ingresando texto a nuestro archivo?, esto también es posible, solo hay que agregar otro mayor que “>>”

[luisa@luisa ~]$ echo «La renata.com» >> hola.txt

cp

cp es uno de los comandos mas utilizados su función es la de copiar ficheros

Ejemplo

vamos a copiar a los archivos alumnos y hola al directorio respaldo el comando quedaría

cp alumnos.txt hola.txt respaldo/

nótese que no indicamos la ruta completa de nuestro directorio, puesto que esta ahí, a esto se le considera una “ruta relativa

[luisa@luisa ~]$ cp hola.txt alumnos.txt respaldo/

cp también puede copiar directorios utilizaremos el identificador -R para poder hacer una copia

[luisa@luisa ~]$ cp -R imagenes/ respaldo/

mv

El comando mv se utiliza para mover ficheros, tiene la misma sintaxis que el comando cp

movamos unos archivos de manera rápida y divertida para eso nos valdremos de los “Comodines” denotado por “*”

donde mv *txt → no importa como se llamen tomara todo con la exención .txt

[luisa@luisa ~]$ mv *.txt imagenes/

para mover directorios no es necesario la utilización de un identificador

el comando quedaría mv directorioOrigen/ directorioDestino/

head

comando que sirve para leer las 10 primeras lineas de un archivo

Ejemplo

[luisa@luisa ~]$ head lista_de_compras.txt

Al momento de ejecutar head aparecerán las primeras 10 lineas del texto, pero se podrá controlar el numero de impresión de lineas?, la respuesta es afirmativa, head también tiene identificadores como -n nos ayuda a delimitar el numero de lineas que queremos imprimir

Al sustituir la n por un numero, en este caso 5 ahora solo imprira las 5 primeras lineas de la lista de compras.

luisa@luisa ~]$ head -5 lista_de_compras.txt

tail

El comando tail podríamos decir que es el inverso a head, puesto que ahora va a imprimirlas ultimas lineas, se ejecuta de la misma manera.

Ejemplo

luisa@luisa ~]$ tail lista_de_compras.txt

Al igual que head se puede hacer uso del identificador -n, el uso de head y tail nos ayudaran a reducir tiempos de búsqueda ya que no es necesario ver un archivo de manera completa

rm

se utiliza para borrar archivos, directorios su sintaxis es la siguiente

para archivos

rm nombre del archivo

para directorio

rmdir nombre del directorio

o se puede utilizar su variante que es

rm -R nombre del directorio

-r indica que es un proceso recursivo

whoami

pone en pantalla el nombre de la maquina

[luisa@luisa ~]$ whoami

luisa

[luisa@luisa ~]$

history

El comando history muestra todos los comandos usados a lo largo de la historia del usuario

[luisa@luisa ~]$ history

El resultado son comandos que se muestran de corrido y si has escrito muchos comandos va a ser muy difícil verlos, pero esto se puede solucionar con la ayuda de pype “|” y el comando less, pype funciona como una tubería enlazando con less para mostrar en pantalla todo el texto disponible, less nos permite una mayor capacidad de navegación por el fichero “avanzar y retroceder”

el resultado final seria

[luisa@luisa ~]$  history | less

wc

wc – print newline, word, and byte counts for each file (man,2017)

El comando man nos imprime en pantalla la cantidad de caracteres, letras, lineas, bytes y lineas máximas de un archivo.

-c imprime cuenta de bytes

-m imprime cuantos caracteres hay

-l imprime cuantos saltos de linea hay

-L imprime la linea mas larga

-w imprime la cantidad de palabras

forma de ejecutar

wc -comando nombre del archivo

Ejemplo

vamos a ver el contenido y cuantas palabras tiene el archivo hola

[luisa@luisa ~]$ wc -w hola
5 hola.txt

[luisa@luisa ~]$

cuando se ejecuta wc -w se tiene 5 palabras, es fantástico no!.

cut

Modo de empleo: cut OPCIÓN… [FICHERO]…
Extrae las partes seleccionadas de cada FICHERO en la salida estándar: (man,2017)

El comando cut tiene opciones para usar

-c Especifica las posiciones de los caracteres

-b Especifica las posiciones de los delimitadores

-d flags Especifica los delimitadores y campos

si se quiere extraer la primera posición de cada campo

[luisa@luisa ~]$ cut -c1 lista.txt

para ejecutar el comando se necesita especificar la posición en este caso le dimos como parámetro 1, pero podremos extraer los primeros n posiciones?, claro que si, el comando es muy poderoso podemos acotar un rango con un guion esto indicara cuantas posiciones van a ser extraídas.

[luisa@luisa ~]$ cut -c-5 lista.txt

df

El comando df muestra el uso del disco duro y otras informaciones como punto de montaje y sistema de ficheros, df tambien cuenta con identificadores para que se pueda tener una mejor lectura

-k utiliza unidades de 1024 bytes en vez de las determinadas de 512 bytes para mostrar el uso de disco

-P Produce una salida en el formato descrito en la sección de la salida estándar (STDOUT)

t Incluye todas las cifras del espacio asignad

-i Muestra los i-nodos usados y disponible

-h Muestra espacio en unidades comunes(KB, MB o GB)

manera de ejecutarlo

[luisa@luisa ~]$ fd -h

nos dará una salida en forma de unidades comunes

chmod

Es un comando que nos ayudara a cambiar los permisos de un archivo, pero como es que funcionan?

En los sistemas Linux hay 3 tipos de atributos son lectura, escritura y ejecución.

lectura “read”

Denotado por una “r”
Si se tiene permiso de lectura de un archivo, se puede ver su contenido.

escritura “write”

Denotado por una “w”
Si se tiene permiso de escritura de un archivo, se puede modificar el archivo como el agregar, sobrescribir o borrar su contenido.

ejecución “execute”

Denotado por una “x”
Si e tiene permiso de ejecución, el sistema operativo podrá ejecutar sin ningún programa

[luisa@luisa ~]$ ls -l
-rw-rw-r–, 1,luisa luisa 159 feb 16 23:06

Como se puede ver al momento de dar un listado completo podemos ver los atributos que tiene el archivo lista, desglosaremos todavía mas los atributos, en los sistemas Linux no solo en usuario puede tener permisos de lectura, escritura y ejecución, sino que también lo puede hacer “grupos” y “otros”, es por eso que se muestran repetidas varias “r” y “w”, chmod actuá dando permisos sobre esos 3, te estarás preguntando como dar permisos en usuario, grupos y otros, es muy sencillo, los permisos se rigen bajo el sistema octal y se sabe que va del 0-7, entonces podríamos decir que:

lectura = 4

Escritura = 2

Ejecución = 1

Valor octal

Tipo de permiso

7

Lectura, escritura y ejecución

6

Lectura y escritura

5

Lectura y ejecución

4

lectura

3

Escritura y ejecución

2

escritura

1

ejecución

0

No hay permisos

Ahora veamos unos ejemplos

vamos a poner sin permisos al archivo lista

[luisa@luisa ~]$ chmod 000 lista.txt
[luisa@luisa ~]$ ls -l lista.txt

[luisa@luisa ~]$ ———-, luisa luisa 159 feb 15 23: 20:00 lista.txt
[luisa@luisa ~]$

vemos que al momento de listar no cuenta con ningún atributo, ahora pongamos solo permisos de lectura solo para el usuario, lo vamos hacer con chmod 400 lista, el primero y segundo dígito nos marcan cero nos dice que siguen sin permisos grupo y otros.

[luisa@luisa ~]$ chmod 400 lista.txt
[luisa@luisa ~]$ ls -l lista.txt

[luisa@luisa ~]$ -r——–, luisa luisa 159 feb 15 23: 20:00 lista.txt
[luisa@luisa ~]$

Comprobemos que en realidad no tiene otro permiso intentemos añadir mas artículos a la lista

[luisa@luisa ~]$ echo «Comida mascota» >> lista.txt

-bash: lista.txt: Permiso denegado
[luisa@luisa ~]$

ahora cambiemos los permisos que tiene a solo lectura y escritura e ingresemos a la lista la comida de mascota

[luisa@luisa ~]$ chmod 600 lista.txt
[luisa@luisa ~]$ ls -l lista.txt

[luisa@luisa ~]$ -rw——–, luisa luisa 159 feb 15 23: 20:00 lista.txt

[luisa@luisa ~]$ echo «Comida mascota» >> lista.txt
[luisa@luisa ~]$

como se puede ver solo se ha estado trabajando en los permisos que puede tener el usuario como ejemplo final demos al archivo lista permiso de lectura, escritura y ejecución en usuario y grupo y en otros solo lectura y escritura.

Si seguimos las reglas tendremos que completar el valor octal para usuario, grupo y otros

usuario = 7

grupo = 7

otro = 5

el resultado final seria chmod 775 lista.txt

w

w – Show who is logged on and what they are doing. (man,2017)

nos muestra quien esta logueado en nuestro sistema y que esta haciendo

Ejemplo

[luisa@luisa ~]$ w

columna user lista al los usuarios activos

columna tty nos muestra que terminal se esta usando

la columna login@ muestra la hora en que se accedio al sistema

las columnas IDLE, JCPU,PCPU muestra los recursos que esta ocupando el usuarios

free

muestra en pantalla la cantidad de memoria ram utilizada

[luisa@luisa ~]$ free

pero no lo muestra en una manera mas facil de leer, si se desea poner un tipo de cantidad en especifico free cuenta con ellos

-h “para personas”

-b “En bytes”

-k “Kilo”

-m “mega”

-g “human”

si volvemos a usar free y con el argumento -h podemos ver que es mas sencillo la lectura de la cantidad de memoria RAM

[luisa@luisa musica]$ free -h

tty

nos muestra en el numero de terminal en que estamos, el cambio de terminales se da mediante la combinación de teclas ctrl+f1,f2,f3,f4,..,f9

[luisa@luisa ~]$ tty

/dev/tty1

aquí esta en tty1 “Terminal 1”

3 comentarios en «Comandos Básicos De Linux»

  1. impresionante amigo, has aprendido mucho y plasmaste tu conocimiento de una manera clara, pude comprender gran parte del articulo solo con la lectura, sumamente interesante, sigue trabajando duro y mucho éxito.

  2. «Nota importante» David, en GNU/Linux la línea de commandos «CLI» es sensible a mayúsculas por lo que te sugiero hagas los cambios correspondientes en los commandos y donde se requiera.

Responder a Carlos Jimenez Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

Demuestra ser humano * Límite de tiempo se agote. Por favor, recargar el CAPTCHA por favor.