La semana pasada lanzamos nuestra serie Linux Hands-On para crear una serie estructurada que informa y educa al lector sobre qué es Linux, cómo funciona y, al mismo tiempo, se asegura de que se ensucie las manos probando los comandos de la terminal.
Como se mencionó en la primera parte de la serie, toda la serie será una progresión lógica cada semana. Eso significa que esta parte solo tendrá sentido si ha pasado por la primera parte y ha probado todos los comandos o si ha el conocimiento básico sobre Linux y puede salirse con la suya. Si no está familiarizado con estos conceptos, asegúrese de lee la primera parte, y luego puedes saltar directamente.
En la publicación de esta semana, nos basaremos en lo que cubrimos en la publicación anterior y le diremos cómo puede hacer algunas cosas más complicadas. Si ha tenido preguntas como ¿cómo editar archivos en Linux? Cómo ver un proceso en Linux, etc., esta publicación las responderá. Entonces, sin perder más tiempo, vayamos directamente a los comandos.
Dividiremos los comandos en secciones para que tenga sentido revisarlos uno por uno.
Que aprenderás
- Manejo de archivos
- La coincidencia de patrones
- Proceso: visualización y matanza
- Editar archivos de texto
Muy bien, ahora que tenemos una estructura básica establecida, repasemos uno por uno.
En la publicación anterior, aprendiste cómo crear archivos en Linux y cómo eliminarlos. Construyamos sobre eso y primero veamos cómo ver el contenido de un archivo.
comando de gato
Para ver el contenido de un archivo, usamos el comando cat. La definición de libro de texto de este comando es que - el comando cat lee secuencialmente un archivo e imprime la salida en la salida estándar. En términos simples, significa que el archivo imprime el contenido de un archivo línea por línea.
Usemos un ejemplo para ver cómo funciona el comando cat, ¿de acuerdo?
Esta es la sintaxis:
gato NOMBRE DE ARCHIVO
Vuelva a colocar la NOMBRE DEL ARCHIVO con uno de los tuyos. Como puede ver a continuación, el comando acaba de imprimir el contenido de los archivos ghost.txt en un formato línea por línea:

Ahora que sabemos cómo ver el contenido de un archivo, aprendamos cómo agregar contenido a un archivo directamente desde la terminal, sin usar ningún editor (no se preocupe, eso llegará muy pronto).
Operadores de redirección en Linux
Una de las formas en que puede agregar (sobrescribir o agregar) el contenido de un archivo es mediante el uso de uno de los operadores de redirección. En términos simples, los operadores de redirección permiten a los usuarios controlar la entrada y salida de un comando.
De lo que pasó por tu cabeza, aquí hay un ejemplo más identificable. ¿Recuerdas lo que hizo el comando echo? Imprimió una cadena en la terminal. La cadena fue la salida del comando echo. Al usar uno de los operadores de redirección, puede usar esa salida y escribirla en un archivo.
Basta de hablar, veamos cómo funciona el operador de redirección con un ejemplo.
Aquí está la sintaxis del operador de redirección:
comando redirection_operator file
Aquí, el comando es el comando de terminal que generará una cadena y el archivo es el archivo real que aceptará esa salida. Hay varios operadores de redirección disponibles, pero limitemos nuestro alcance a escribir en archivos.
Para hacerlo, podemos usar uno de los dos operadores de redirección, es decir, > y >>
En la siguiente captura de pantalla, puede ver cómo funciona. He mostrado en la terminal que el archivo está inicialmente vacío usando el comando cat, luego agregué contenido al archivo usando el comando echo y finalmente imprimí el contenido usando el comando cat.
El > El operador trabaja en el modo de sobrescritura. Esto significa que si usa el > operador para escribir contenido en un archivo, se sobrescribirá su contenido anterior. Esto se muestra en la captura de pantalla siguiente. Como puede ver, el contenido anterior fue reemplazado por el nuevo.

Ahora, la pregunta obvia es ¿qué pasa si no desea reemplazar el contenido existente? Bueno, hay una versión del operador de redirección que hace precisamente eso.
Para agregar a un archivo, en lugar de usar el> usamos >>
Esta es la sintaxis:
comando >> nombre de archivo
Y puede ver un uso de ejemplo en la captura de pantalla a continuación, el contenido se adjuntó. Bastante ordenado, ¿verdad? De acuerdo, no ofrece la misma flexibilidad que un editor de texto, pero para casos de uso más pequeños, hace el trabajo bastante bien.

¡Muy bien, avanzando!
Ahora que sabemos cómo agregar contenidos a un archivo y cómo verlos, ¿qué tal si aprendemos a buscar archivos en el sistema de archivos?
encontrar comando
Para buscar archivos dentro de su sistema de archivos, usamos el comando find. El comando hace básicamente lo que dice hacer. Encuentra un nombre de archivo determinado o un patrón de expresiones regulares.
La sintaxis básica para el mismo sería la siguiente:
buscar expresión de nombre de ruta
Como siempre, reemplace los marcadores de posición con sus propios valores.
El camino le dice al comando de búsqueda en qué directorio buscar el archivo dado. los nombre La opción especifica un patrón con el que se debe comparar la búsqueda.
Veamos cómo funciona el comando de búsqueda en un uso de muestra.

Como se ve a continuación en la salida de muestra, el comando busca cualquier .exe archivos dentro de mi sistema de archivos y los envía a la consola. Ahora que tenemos algunos de los comandos de manipulación más complejos en nuestro haber, vayamos un paso más allá.
Ahora veremos cómo podemos buscar cosas dentro de un archivo.
comando grep
grep significa Expresión regular global y aunque cubriremos eso en una publicación futura, la explicación básica de lo que significa es que es solo una plantilla que grep usa para comparar las cadenas para encontrar una coincidencia. No se preocupe si no tiene mucho sentido. Lo cubriremos ampliamente en la Parte 3.
Muy bien, probemos grep. Aquí está la sintaxis de nuestra prueba:
grep -i "cadena para que coincida con" nombre de archivo.extensión
El - yo La opción le dirá a grep que ignore las mayúsculas y minúsculas para que “HO”, “ho” y “hO” se consideren lo mismo. La cadena con la que comparar se especifica entre comillas, que luego son seguidas por el nombre del archivo.

Muy bien, veamos cómo el comando grep en una demostración. Como se vio arriba, mi ejemplo muestra el uso de grep en ambos modos sensibles a mayúsculas y minúsculas y en modo no sensible a mayúsculas y minúsculas.
Vale la pena señalar en este punto que existen diferentes combinaciones para un comando y varias opciones para acompañarlo. Lo que estoy haciendo aquí es brindarle un caso de uso general redondeado que funcionará para la mayoría de los casos simples, pero en caso de que quiera hacer todo lo posible, definitivamente puede hacer un hombre en el comando para descubrir todas las opciones disponibles para usar con el mando.
A continuación, veamos cómo podemos comparar 2 archivos diferentes línea por línea.
Comando diff
Para ver en qué se diferencian 2 archivos (¿entiendes?), Usamos el comando diff. Es mejor verlo en acción para comprender cómo funciona realmente, así que empecemos.
Aquí está la sintaxis del comando diff:
diferencia archivo1 archivo2
Y aquí hay un ejemplo de uso del comando diff Linux:

A primera vista, puede que no tenga mucho sentido, así que analicemos el resultado.
La primera línea de la salida de diferencias contendrá:
- números de línea correspondientes al primer archivo
- una letra (a para agregar, c para cambiar od para eliminar)
- números de línea correspondientes al segundo archivo.
En nuestro resultado anterior, "1,3c1" medio: "Las líneas 1 a 3 del primer archivo deben cambiarse para que coincidan con las líneas 1 del segundo archivo". Luego nos dice cuáles son esas líneas en cada archivo:
- Las líneas precedidas por <son líneas del primer archivo
- Las líneas precedidas por> son líneas del segundo archivo.
Continuando, veremos cómo podemos encontrar líneas repetidas en un archivo dado.
comando uniq
El comando uniq se usa para averiguar las líneas repetidas junto con su recuento y otros detalles similares. Si lo maneja, dice que se usa para filtrar o informar líneas repetidas en un archivo. Como con casi todos los comandos, el comando uniq también tiene un montón de opciones que lo acompañan.
Pero en aras de la brevedad y para asegurarse de que aprende una mayor cantidad de comandos en lugar de aprender demasiado sobre un solo comando, solo sacaremos un ejemplo mínimo, y puede profundizar más usando el comando man.
Muy bien, aquí está la sintaxis del comando uniq:
uniq -options nombre de archivo
Ahora veamos una muestra para aprender cómo funciona el comando uniq en Linux.

Analicemos la muestra muy rápido. los -c La opción le dice al comando uniq que imprima un contar junto con la salida y la siguiente opción es la nombre de archivo que se suministra a uniq.
Como puede ver en el ejemplo anterior, imprimió el recuento de líneas repetidas que en nuestro caso fue 2.
Eso debería ser suficiente para todos los comandos que necesita saber para asegurarse de que puede trabajar con archivos, pero hay una parte muy importante que no cubrimos hasta ahora y se trata de los derechos de acceso.
Como ve en el mundo real, no quiere que todos sus archivos tengan un acceso global de lectura y escritura, lo que significa que cualquiera puede caminar y editar un archivo. Ciertos archivos deben protegerse contra alteraciones. Ahí es donde entra el control de acceso, y Linux y Unix lo administran sorprendentemente bien con este próximo comando.
Comando chmod
El comando chmod significa modo de cambio y básicamente le permite modificar la forma en que se puede acceder a un archivo y quién puede acceder a él.
La sintaxis de chmod es bastante simple y se ve así:
chmod -options permisos nombre de archivo
Si bien las opciones y el nombre de archivo no necesitan elaboración, el permisos parte necesita alguna explicación.
Los permisos de archivo en Linux giran en torno a 3 alcances, usuario, grupo, y otros. Los permisos son a su vez de 3 tipos leer escribir, y ejecutar. Lo que significa que cada ámbito tiene 3 permisos, lo que hace un total de 3 conjuntos de ámbitos con 3 permisos en cada uno.
Teniendo esto en cuenta, aquí hay un uso de muestra para mostrarle cómo funciona chmod:
chmod u = rwx, g = rx, o = r nombrearchivo.txt
Aquí u representa usuario, g para Grupo y o para otros. Y el = el signo se usa para asignar el permiso leer (r), escribir (w), y ejecutar (x) a cada alcance. La coma separa cada tarea.

Hay una forma abreviada de asignar los permisos y está usando la notación octal. En la notación octal:
- 4 significa leer
- 2 significa escribir
- 1 significa ejecutar
- 0 significa sin permiso
Entonces, de acuerdo con la notación anterior, el número 7 otorgará permiso de lectura, escritura y ejecución (4 + 2 + 1). Puede mezclarlo y combinarlo en consecuencia y aquí hay un caso de uso de muestra utilizando la notación octal:
chmod 755 guerra de las galaxias.txt

En esta muestra, el archivo starwars tiene:
- permiso de lectura, escritura y ejecución para el usuario.
- leer y ejecutar para el grupo.
- ejecutar a otros.
¡Bien! nos estamos acercando al final de la parte de manejo de archivos de la publicación. Este comando final le permitirá archivar un archivo / comprimir un archivo. Archivar un archivo es útil cuando desea mover un montón de archivos entre sistemas mientras se asegura de evitar corromperlos.
comando tar
El comando tar significa archivo de cinta y le permite crear, manipular y extraer los archivos archivados.
Aquí está la sintaxis básica del comando para ver cómo funciona:
tar -opciones nombrearchivo1 nombrearchivo1…. nombrearchivoN
Veamos un uso de muestra con un par de opciones. Es muy recomendable que juegues con la muestra y luego la explores por ti mismo para descubrir casos de uso más interesantes.
tar -c -f comprimido.zip fantasma.txt starwars.txt

Vamos a analizarlo. los -c y -f Los comandos son solo algunos entre una lista de muchos, pero esto es lo que hacen. los -c La opción le dice al comando que crear un nuevo archivo y -f se utiliza para especificar el nombre del archivo para el archivo que en este caso es comprimido.zip, el comando tar puede crear archivos en .zip, .tar, .rar y otros formatos, así que asegúrese de elegir uno que se adapte a sus necesidades
Ahora que sabe cómo comprimir archivos, veamos cómo extraerlos. Usamos el -x y -f opciones en el comando tar para extraer un archivo, el -x la opción le dice a tar que extraer el archivo y -f se utiliza para especificar el nombre del archivo como se muestra en el siguiente ejemplo:

Muy bien, finalmente pasamos la parte de manejo de archivos de la publicación. ¡Viva! Hiciste un gran trabajo llegando hasta aquí. Ahora hablaremos de procesos.
En la terminología de Linux, un proceso es un programa actualmente en ejecución, que lleva a cabo una tarea específica. Los procesos son dinámicos y cambian constantemente a medida que el usuario cambia de aplicación.
El Documentación de Linux habla sobre los procesos con gran detalle y te animo a leer una vez que hayas terminado con esta publicación.
Ahora que sabemos qué es un proceso, veamos cómo verlos.
comando ps
El comando ps nos permite ver qué procesos se están ejecutando actualmente en una máquina. Viene con una variedad de opciones, pero aquí hay un uso mínimo que muestra todos los procesos que se ejecutan actualmente como root.
La sintaxis es la siguiente
ps -opción
En nuestro caso, usaremos el -u opción que mostrará el procesos que se ejecutan como root.

Ahora que sabe cómo ver los procesos, ¿qué tal si aprende a eliminarlos?
Comando kill
El comando kill se usa para matar o terminar un proceso dado sin cerrar la sesión o reiniciar la computadora. Vale la pena señalar que el comando kill en realidad no mata un proceso, solo envía una señal a un proceso y la señal le dice al proceso lo que se debe hacer. Por defecto, cuando no se especifica ninguna señal, una señal 15 , que son SIGNO se envía al proceso y si este falla una señal más fuerte 9 SIGMA se envía al proceso, sin embargo, para la mayoría de los casos de uso normales, todo lo que necesita especificar para matar un proceso es PID.
Aquí está la sintaxis del comando kill:
matar [señal u opciones] PID
Y aquí hay una demostración:

Tenga mucho cuidado al matar un proceso. Matar un proceso crítico del sistema puede hacer que su máquina se comporte de manera anormal. Sin embargo, si aún logra hacerlo, asegúrese de reiniciar su sistema una vez para restaurar su ejecución normal.
Muy bien, ahora que hemos cubierto algunos aspectos con los comandos de la terminal, hablemos de una forma fácil de hacer cambios / agregar contenido a un archivo. Todos usamos editores de texto como Visual Studio Code o Atom, pero dado que el objetivo de esta serie es que todos se sientan cómodos y cómodos con el terminal, ¿por qué no explorar un editor básico dentro del propio terminal?
comando nano
Nano (confía en mí) significa Nano's AÑOOtro editor y es un editor gratuito, liviano y de código abierto que le permite editar archivos dentro del terminal es un editor de texto nativo como un entorno con los comandos habituales con los que está familiarizado.
Para invocar nano / abrir un archivo en nano, escriba el comando en la siguiente sintaxis:
nano NOMBRE DE ARCHIVO
Si el archivo existe, nano lo abrirá y, en caso de que no lo haga, creará un nuevo archivo con ese nombre y lo abrirá. El editor en sí mismo es bastante mínimo y, a diferencia de su hermano mayor (y odiado) Vim / Vi, no te vuelve loco con los comandos notoriamente difíciles. Para navegar dentro del archivo, use las teclas de flecha habituales. Para eliminar contenido, todavía usa la tecla de borrar / retroceso y para manejar su portapapeles usa las conocidas Ctrl + C, Ctrl + V, etc.

El editor muestra las operaciones más utilizadas, como salir del editor en la mitad inferior de la pantalla. Antes de dejar de usar Ctrl + X, se le pedirá que guarde los cambios que realizó. Seguro que Vim ha existido por más tiempo, pero en mi opinión personal, no es más que un pase a la cultura hippy. Lo máximo que puedes sacar de ser un profesional en Vim sería alardear y terminar ahí. No hay absolutamente ninguna razón por la que uno deba perder su valioso tiempo aprendiendo a usar Vim. Dicho esto, finalmente hemos llegado al final de la Parte 2.
Comandos de Linux para usuarios intermedios: resumen
En la Parte 2 de la serie Linux Hands On, construimos sobre la base que establecimos Parte 1. Manejamos archivos y los manipulamos. También aprendimos un concepto completamente nuevo llamado procesos y cómo eliminarlos. Y cerramos esta parte con una descripción general del editor de texto Nano. Eso sería todo por esta semana. Hasta que regresemos la próxima semana con la Parte 3, asegúrese de tener suficiente tiempo para jugar con el comando compartido en esta publicación. No se sienta abrumado por la cantidad de comandos que hay, se necesita mucho tiempo para que estas cosas se conviertan en memoria muscular. Hasta que eso suceda, la experiencia práctica es tu mejor amiga.
Manas Chaudhary
Gracias por esta serie de Linux. He pasado por esto completamente y lo encontré realmente útil. Especialmente videos. A veces es difícil seguir el artículo, así que descargué el video y lo aprendí. Ahora siento que conozco una buena cantidad de Linux para empezar a hacer algo en él. Gracias por estas publicaciones me ayudaron mucho.