Seguimos realizando una tarea de manera convencional hasta que llegamos a saber que se puede hacer mucho mejor de la otra manera. Como continuación de nuestra Serie de consejos y trucos de Linux, estoy aquí con los siguientes cuatro consejos que lo ayudarán de muchas maneras. ¡Aquí vamos!
1. Se supone que debe crear un árbol de directorios largo/complejo similar al que se proporciona a continuación. ¿Cuál es la forma más efectiva de lograr esto?
Estructura de árbol de directorios para lograr lo que se sugiere a continuación.
$ cd /home/$USER/Desktop $ mkdir tecmint $ mkdir tecmint/etc $ mkdir tecmint/lib $ mkdir tecmint/usr $ mkdir tecmint/bin $ mkdir tecmint/tmp $ mkdir tecmint/opt $ mkdir tecmint/var $ mkdir tecmint/etc/x1 $ mkdir tecmint/usr/x2 $ mkdir tecmint/usr/x3 $ mkdir tecmint/tmp/Y1 $ mkdir tecmint/tmp/Y2 $ mkdir tecmint/tmp/Y3 $ mkdir tecmint/tmp/Y3/z
El escenario anterior se puede lograr simplemente ejecutando el siguiente comando de 1 línea.
$ mkdir -p /home/$USER/Desktop/tecmint/{etc/x1,lib,usr/{x2,x3},bin,tmp/{Y1,Y2,Y3/z},opt,var}
Para verificar, puede usar árbol dominio. Si no está instalado, puede apt o mmm el paquete 'árbol ‘.
$ tree tecmint
Podemos crear una estructura de árbol de directorios de cualquier complejidad usando la forma anterior. Tenga en cuenta que no es más que un comando normal, pero está usando {}
para crear una jerarquía de directorios. Esto puede resultar muy útil si se usa desde dentro de un script de shell cuando sea necesario y en general.
2. Cree un archivo (por ejemplo, prueba) en su escritorio (/home/$USER/Desktop) y rellénelo con los siguientes contenidos.
ABC DEF GHI JKL MNO PQR STU VWX Y Z
¿Qué haría un usuario normal en este escenario?
a. Primero creará el archivo, preferiblemente usando el comando táctil, como:
$ touch /home/$USER/Desktop/test
b. Utilizará un editor de texto para abrir el archivo, que puede ser nano , vim , o cualquier otro editor.
$ nano /home/$USER/Desktop/test
c. Luego colocará el texto anterior en este archivo, lo guardará y saldrá.
Entonces, independientemente del tiempo que tome, necesita al menos 3 pasos para ejecutar el escenario anterior.
¿Qué hará un Linux-er inteligente y experimentado? Simplemente escribirá el siguiente texto de una sola vez en la terminal y listo. No necesita hacer cada acción por separado.
cat << EOF > /home/$USER/Desktop/test ABC DEF GHI JKL MNO PQR STU VWX Y Z EOF
Puedes usar 'gato ‘comando para comprobar si el archivo y su contenido se crearon correctamente o no.
$ cat /home/avi/Desktop/test
3. Tratamos con archivos (especialmente bolas TAR) muy a menudo en Linux. En muchos casos, tenemos que usar esa bola TAR en alguna ubicación que no sea la carpeta de Descargas. ¿Qué hacemos en este escenario?
Normalmente hacemos dos cosas en este escenario.
a. Copie/mueva la bola de alquitrán y extráigala en el destino, como:
$ cp firefox-37.0.2.tar.bz2 /opt/ or $ mv firefox-37.0.2.tar.bz2 /opt/
b. cd a /opt/ directorio.
$ cd /opt/
c. Extrae el Tarball.
# tar -jxvf firefox-37.0.2.tar.bz2
Podemos hacer esto al revés.
Extraeremos el Tarball donde está y Copiaremos/Moveremos el archivo extraído al destino requerido como:
$ tar -jxvf firefox-37.0.2.tar.bz2 $ cp -R firefox/ /opt/ or $ mv firefox/ /opt/
En cualquier caso, el trabajo requiere dos o más pasos para completarse. El profesional puede completar esta tarea en un solo paso como:
$ tar -jxvf firefox-37.0.2.tar.bz2 -C /opt/
La opción -C hace que tar extraiga el archivo en la carpeta especificada (aquí /opt/ ).
No, no se trata de una opción (-C ) pero se trata de hábitos. Acostúmbrate a usar la opción -C con alquitrán Te facilitará la vida. A partir de ahora, no mueva el archivo ni copie/mueva el archivo extraído, simplemente deje la bola TAR en Descargas y extráigalo donde desee.
4. ¿Cómo matamos un proceso de forma tradicional?
De manera más general, primero listamos todo el proceso usando el comando ps -A
y canalizarlo con grep para encontrar un proceso/servicio (digamos apache2 ), simplemente como:
$ ps -A | grep -i apache2
Salida de muestra
1006 ? 00:00:00 apache2 2702 ? 00:00:00 apache2 2703 ? 00:00:00 apache2 2704 ? 00:00:00 apache2 2705 ? 00:00:00 apache2 2706 ? 00:00:00 apache2 2707 ? 00:00:00 apache2
El resultado anterior muestra todo apache2 actualmente en ejecución procesos con sus PID's , luego puede usar estos PID para eliminar apache2 con la ayuda del siguiente comando.
# kill 1006 2702 2703 2704 2705 2706 2707
y luego verifique si hay algún proceso/servicio con el nombre 'apache2 ‘ se está ejecutando o no, como:
$ ps -A | grep -i apache2
Sin embargo, podemos hacerlo en un formato más comprensible usando utilidades como pgrep y pkill . Puede encontrar información relevante sobre un proceso simplemente usando pgrep . Digamos que tiene que encontrar la información del proceso para apache2 , simplemente puede hacer:
$ pgrep apache2
Salida de muestra
15396 15400 15401 15402 15403 15404 15405
También puede enumerar el nombre del proceso contra pid corriendo.
$ pgrep -l apache2
Salida de muestra
15396 apache2 15400 apache2 15401 apache2 15402 apache2 15403 apache2 15404 apache2 15405 apache2
Para matar un proceso usando pkill es muy simple. Simplemente escriba el nombre del recurso para matar y listo. He escrito una publicación en pkill que puede consultar aquí:https://www.tecmint.com/how-to-kill-a-process-in-linux/.
Para matar un proceso (digamos apache2 ) usando pkill , todo lo que necesitas hacer es:
# pkill apache2
Puede verificar si apache2 ha sido eliminado o no ejecutando el siguiente comando.
$ pgrep -l apache2
Devuelve el indicador y no imprime nada, lo que significa que no hay ningún proceso en ejecución con el nombre de apache2 .
Eso es todo por ahora, de mi parte. Todos los puntos discutidos anteriormente no son suficientes, pero seguramente ayudarán. No solo pretendemos producir tutoriales para que aprendas algo nuevo cada vez, sino que también queremos mostrar 'Cómo ser más productivo en el mismo marco '. Envíenos sus valiosos comentarios en los comentarios a continuación. Manténgase conectado. Sigue comentando.