20 comandos avanzados para usuarios de Linux de nivel medio

20 comandos avanzados para usuarios de Linux de nivel medio

Es posible que el primer artículo le haya resultado muy útil, este artículo es una extensión de los 20 comandos útiles para principiantes de Linux. El primer artículo estaba destinado a principiantes y este artículo es para usuarios de nivel medio. y usuarios avanzados. Aquí encontrará cómo personalizar la búsqueda, conocer la guía de procesos en ejecución para matarlos, cómo hacer que su terminal Linux. sea productivo es un aspecto importante y cómo compilar c. c ++. programas java. en nix.

 Comandos avanzados y expertos de Linux  Comandos avanzados y expertos de Linux 20 Comandos avanzados y expertos de Linux

21. Comando: Buscar

Busque archivos en el directorio dado, comenzando jerárquicamente en el directorio principal y moviéndose a los subdirectorios.

[email protected]: ~ # find-name * .sh ./Desktop/load.sh ./Desktop/test.sh ./Desktop/shutdown.sh ./Binary/firefox/run-mozilla.sh ./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh ./Downloads/kdewebdev-3.5.8/admin/doxygen.sh ./Downloads/kdewebdev-3.5.8/admin/cvs.sh ./Downloads/kdewebdev-3.5.8/admin/ltmain.sh ./Downloads/wheezy-nv-install.sh

Nota:. La opción `-name. ‘hace que la búsqueda distinga entre mayúsculas y minúsculas. Puede utilizar la opción “-iname. para buscar algo independientemente del caso. ( *. es un comodín y busca en todo el archivo que tenga la extensión ‘ .sh. ; puede usar el nombre del archivo o una parte del nombre del archivo para personalizar la salida).

[correo electrónico protegido]: ~ # find-iname * .SH (find-iname * .Sh/find-iname * .sH) ./Desktop/load.sh ./Desktop/test.sh ./Desktop/shutdown.sh./Binary/firefox/run-mozilla.sh ./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh ./Downloads/kdewebdev-3.5.8/admin/doxygen.sh ./Downloads/kdewebdev-3.5. 8/admin/cvs.sh ./Downloads/kdewebdev-3.5.8/admin/ltmain.sh ./Downloads/wheezy-nv-install.sh [email protected]: ~ # find-name * .tar.gz/var/www/modules/update/tests/aaa_update_test.tar.gz ./var/cache/flashplugin-nonfree/install_flash_player_11_linux.i386.tar.gz ./home/server/Downloads/drupal-7.22.tar.gz ./home/servidor/Descargas/smtp-7.x-1.0.tar.gz ./home/server/Downloads/noreqnewpass-7.x-1.2.tar.gz ./usr/share/gettext/archive.git.tar.gz./usr/share/doc/apg/php.tar.gz ./usr/share/doc/fes tival/examples/speech_pm_1.0.tar.gz ./usr/share/doc/argyll/examples/spyder2.tar.gz ./usr/share/usb_modeswitch/configPack.tar.gz

Nota. el comando anterior busca todos los archivos que tienen la extensión ‘ tar.gz. en el directorio raíz y todos los subdirectorios, incluidos los dispositivos montados.

Lea más ejemplos de Linux Comando ‘ encontrar. en 35 Ejemplos de comandos de búsqueda en Linux

22. Comando: grep

freestar.config.enabled_slots.push

El comando ‘ grep. busca en el archivo dado líneas que contienen una coincidencia con las cadenas o palabras dadas. Busque ‘/etc/passwd. para el usuario ‘ tecmint. .

[email protected]: ~ # grep tecmint/etc/passwd tecmint: x: 1000: 1000: Tecmint,,,:/home/tecmint:/bin/bash

Ignorar mayúsculas y minúsculas y todas las demás combinaciones con la opción ‘-i. .

[email protected]: ~ # grep-i TECMINT/etc/passwd tecmint: x: 1000: 1000: Tecmint,,,:/home/tecmint:/bin/bash

Buscar recursivamente (-r. es decir,. leer todos los archivos de cada directorio para una cadena “ 127.0.0.1. .

[correo electrónico protegido]: ~ # grep-r “127.0.0.1”/etc//etc/vlc/lua/http/.hosts:127.0.0.1/etc/speech-dispatcher/modules/ivona.conf: #IvonaServerHost “127.0.0.1”/etc/mysql/my.cnf:bind-address = 127.0.0.1/etc/apache2/mods-available/status.conf: Permitir desde 127.0.0.1 :: 1/etc/apache2/mods-available/ldap.conf: Permitir desde 127.0.0.1 :: 1/etc/apache2/mods-available/info.conf: Permitir desde 127.0.0.1 :: 1/etc/apache2/mods-available/proxy_balancer.conf:# Permitir desde 127.0.0.1 :: 1/etc/security/access.conf:#+: root: 127.0.0.1/etc/dhcp/dhclient.conf:#prepend domain-name-servers 127.0.0.1;/etc/dhcp/dhclient.conf:# option domain-name-servers 127.0.0.1;/etc/init/network-interface.conf: ifconfig lo 127.0.0.1 arriba || verdadero/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1)./etc/java-6-openjdk/net.properties:# http.nonProxyHosts = localhost | 127.0.0.1/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1)./etc/java-6-openjdk/net.properties:# ftp.nonProxyHosts = localhost | 127.0.0.1/etc/hosts:127.0.0.1 localhost

Nota. Puede utilizar las siguientes opciones junto con grep.

  1. -w. para palabra (egrep-w ‘ palabra1. | palabra2. ‘/ruta/al/archivo).
  2. -c. para el recuento (es decir, el número total de veces que el patrón coincide) (grep-c’ palabra. ‘/ruta/al/archivo).
  3. –color. para salida en color (grep –color. servidor/etc/passwd) .

23. Command: man

El “ man. es el localizador manual del sistema. Man proporciona documentación en línea para todas las opciones posibles con un comando y sus usos. Casi todos los comandos vienen con sus correspondientes páginas de manual. Por ejemplo,

[email protected]: ~ # man man MAN (1) Pager manual utils MAN (1) NAME man-una interfaz para los manuales de referencia en línea SINOPSIS man [-C file] [-d] [-D] [–warnings [= warnings]] [-R codificación] [-L locale] [-m system [, …]] [-M path] [-S list] [-e extension] [-i |-I] [–regex |–wildcard] [–nombres-solamente] [-a] [-u] [–no-subpáginas] [-P paginador] [-r indicador] [-7 ] [-E codificación] [–sin guiones] [–sin justificación] [-p cadena] [-t] [-T [dispositivo]] [-H [navegador]] [-X [dpi]] [-Z] [[sección] página …] … man-k [opciones apropos] regexp … man-K [-w |-W] [-S lista] [-i |-I] [–regex] [sección] término … man-f [cuáles son las opciones] página … man-l [-C archivo] [-d] [-D] [–warnings [= advertencias]] [-R codificación] [-L locale] [-P pager] [-r prompt] [-7] [-E encoding] [-p string] [-t] [-T [dispositivo]] [-H [navegador]] [-X [dpi]] [-Z] archivo … man-w |-W [-C archivo] [-d] [-D] página … man-c [-Archivo C] [-d] [-D] página … man [-hV]

Página manual para la página man en sí, de manera similar ‘ man cat. (página manual para comando cat) y ‘ man ls. (página del manual para el comando ls).

Nota. la página del manual está diseñada para referencia y aprendizaje de comandos.

24. Comando: ps

ps. ( Proceso. proporciona el estado de los procesos en ejecución con un Id. único llamado PID.

[email protected]: ~ # ps PID TTY TIME CMD 4170 pts/1 00:00:00 bash 9628 pts/1 00:00:00 ps

Para mostrar el estado de todos los procesos junto con el proceso id. y PID. use la opción ‘-A. .

[email protected]: ~ # ps-A PID TTY TIME CMD 1? 00:00:01 init 2? 00:00:00 kthreadd 3? 00:00:01 ksoftirqd/0 5? 00:00:00 ktrabajador/0: 0H 7? 00:00:00 ktrabajador/u: 0H 8? 00:00:00 migración/0 9? 00:00:00 rcu_bh ….

Nota. este comando es muy útil cuando desea saber qué procesos se están ejecutando o pueden necesitar PID. a veces, para proceso para ser asesinado. Puede usarlo con el comando “ grep. para buscar resultados personalizados. Por ejemplo,

[email protected]: ~ # ps-A | grep-i ssh 1500? 00:09:58 sshd 4317? 00:00:00 sshd

Aquí “ ps. se canaliza con el comando “ grep. para encontrar resultados personalizados y relevantes de nuestra necesidad.

25. Comando: kill

Bien, es posible que haya entendido para qué es este comando, por el nombre del comando. Este comando se usa para matar el proceso que no es relevante ahora o no responde. Es un comando muy útil, más bien un comando muy, muy útil. Es posible que esté familiarizado con el reinicio frecuente de Windows debido al hecho de que la mayoría de las veces un proceso en ejecución no se puede eliminar, y si se elimina, es necesario que Windows se reinicie para que los cambios puedan aplicarse, pero en el mundo de Linux, no hay tales cosas. Aquí puede matar un proceso e iniciarlo sin reiniciar todo el sistema.

Necesita el pid (ps) de un proceso para matarlo.

Supongamos que quiere matar el programa ‘ apache2. ‘que podría no responder. Ejecute “ ps-A. junto con el comando grep.

[email protected]: ~ # ps-A | grep-i apache2 1285? 00:00:00 apache2

Busque el proceso “ apache2. , observe su pid. y elimínelo. Por ejemplo, en mi caso ‘ apache2. pid es ‘ 1285. .

[email protected]: ~ # kill 1285 (para matar el proceso apache2)

Nota. cada vez que vuelve a ejecutar un proceso o inicia un sistema, se genera un nuevo pid. para cada proceso y puede conocer los procesos en ejecución actuales y sus pid. usando el comando ‘ ps. .

Otra forma de matar el mismo proceso es.

[email protected]: ~ # pkill apache2

Nota. Kill requiere ID de trabajo. ID de proceso. para enviar señales, donde, como en pkill,. usted tiene la opción de utilizar un patrón, especificar el propietario del proceso, etc.

26. Comando: whereis

El comando ‘ whereis. se utiliza para localizar las páginas binarias. fuentes. y manuales. del comando. Por ejemplo, para ubicar los Binarios. Fuentes. y Páginas manuales. del comando ‘ ls. y ‘ kill. ‘.

[email protected]: ~ # whereis ls ls:/bin/ls/usr/share/man/man1/ls.1.gz [email protected]: ~ # whereis kill kill:/bin/kill/usr/share/man/man2/kill.2.gz/usr/share/man/man1/kill.1.gz

Nota. Esto es útil para saber dónde se instalan los binarios para la edición manual a veces.

27. Comando: servicio

El comando ‘ servicio. controla el Inicio. Detención. o Reinicio. de un “ servicio. . Este comando permite iniciar. reiniciar. o detener. un servicio sin reiniciar el sistema, para que los cambios surtan efecto.

Iniciando un servidor apache2 en Ubuntu [correo electrónico protegido]: ~ # service apache2 start * Iniciando el servidor web apache2 apache2: No se pudo determinar de manera confiable el nombre de dominio completo del servidor, usando 127.0.1.1 para ServerName httpd (pid 1285) ya en ejecución [ OK] Reiniciando un servidor apache2 en Ubuntu [correo electrónico protegido]: ~ # service apache2 restart * Reiniciando el servidor web apache2 apache2: No se pudo determinar de manera confiable el nombre de dominio completo del servidor, usando 127.0.1.1 para ServerName … esperando .apache2: Podría no determinar de manera confiable el nombre de dominio completo del servidor, usando 127.0.1.1 para ServerName [OK] Deteniendo un servidor apache2 en Ubuntu [correo electrónico protegido]: ~ # service apache2 stop * Deteniendo el servidor web apache2 apache2: No se pudo determinar de manera confiable el nombre de dominio completo del servidor, usando 127.0.1.1 para ServerName … esperando [OK]

Nota. Todo el script del proceso se encuentra en ‘/etc/init.d. , y la ruta es posible que deba incluirse en cierto sistema, es decir, a pesar de ejecutar “ service apache2 start. , se le pedirá que ejecute “/etc/init.d/apache2 start. ”.

28. Comando: alias

alias. es un comando de shell integrado que le permite asignar un nombre a un comando largo o comando de uso frecuente.

Utilizo el comando “ ls-l. con frecuencia, que incluye 5. caracteres, incluido el espacio. Por lo tanto, creé un alias para esto para ‘ l. .

[email protected]: ~ # alias l = ‘ls-l’

verifique si funciona o no.

[email protected]: ~ # l total 36 drwxr-xr-x 3 tecmint tecmint 4096 10 de mayo 11:14 Binario drwxr-xr-x 3 tecmint tecmint 4096 21 de mayo 11:21 Escritorio drwxr-xr-x 2 tecmint tecmint 4096 21 de mayo 15:23 Documentos drwxr-xr-x 8 tecmint tecmint 4096 20 de mayo 14:56 Descargas drwxr-xr-x 2 tecmint tecmint 4096 7 de mayo 16:58 Música drwxr-xr-x 2 tecmint tecmint 4096 20 de mayo 16: 17 Imágenes drwxr-xr-x 2 tecmint tecmint 4096 7 de mayo 16:58 Público drwxr-xr-x 2 tecmint tecmint 4096 7 de mayo 16:58 Plantillas drwxr-xr-x 2 tecmint tecmint 4096 7 de mayo 16:58 Vídeos

Para eliminar el alias ‘ l. , use el siguiente comando ‘ unalias. .

[email protected]: ~ # unalias l

marque, si ‘ l. ‘todavía es un alias o no.

[email protected]: ~ # l bash: l: comando no encontrado

Hacer un poco de diversión con este comando. Hacer alias de cierto comando importante para algún otro comando importante.

alias cd = ‘ls-l’ (establecer el alias de ls-l en cd) alias su = ‘pwd’ (establecer el alias de pwd en su) .. .. (Puedes crear el tuyo propio) ….

Ahora, cuando tu amigo teclee ‘ cd. , piensa en lo divertido que sería cuando se listara el directorio y no cambiara el directorio. Y cuando intenta ser ‘ su. , todo lo que obtiene es la ubicación del directorio de trabajo. Puede eliminar el alias más tarde usando el comando “ unalias. como se explicó anteriormente.

29. Comando: df

Informar sobre los usos del disco del sistema de archivos. Útil tanto para el usuario como para el administrador del sistema para realizar un seguimiento de los usos del disco. ‘ df. funciona examinando las entradas del directorio, que generalmente se actualizan solo cuando se cierra un archivo.

[email protected]: ~ # df Filesystem 1K-blocks Usado Disponible Use% Montado en/dev/sda1 47929224 7811908 37675948 18%/ninguno 4 0 4 0%/sys/fs/cgroup udev 1005916 4 1005912 1%/dev tmpfs 202824816 202008 1%/ejecutar ninguno 5120 0 5120 0%/ejecutar/bloquear ninguno 1014120 628 1013492 1%/run/shm ninguno 102400 44 102356 1%/run/user/dev/sda5 184307 79852 94727 46%/boot/dev/sda7 95989516 61104 91045676 1%/data/dev/sda8 91953192 57032 87218528 1%/personal

Para obtener más ejemplos del comando ‘ df. , lea el artículo 12 Ejemplos de comandos df en Linux.

30. Comando: du

Estime el uso del espacio de archivos. Genere el resumen de los usos del disco por cada archivo jerárquicamente, es decir, de manera recursiva.

[email protected]: ~ # du 8 ./Daily Pics/wp-polls/images/default_gradient 8 ./Daily Pics/wp-polls/images/default 32 ./Daily Pics/wp-polls/images 8 ./Daily Pics/wp-polls/tinymce/plugins/polls/langs 8 ./Daily Pics/wp-polls/tinymce/plugins/polls/img 28 ./Daily Pics/wp-polls/tinymce/plugins/polls 32 ./Daily Pics/wp-polls/tinymce/plugins 36 ./Daily Pics/wp-polls/tinymce 580 ./Daily Pics/wp-polls 1456./Daily Pics 36 ./Plugins/wordpress-author-box 16180 ./Plugins 12 ./May Articles 2013/Xtreme Download Manager 4632 ./May Articles 2013/XCache

Nota. ‘ df. ‘solo informa estadísticas de uso en sistemas de archivos, mientras que’ du. ‘, por otro lado, mide el contenido del directorio. Para obtener más ejemplos y uso de comandos “ du. , lea Comandos du (Uso del disco).

31. Comando: rm

El comando “ rm. significa eliminar. rm. se utiliza para eliminar archivos y directorios.

Eliminar un directorio [email protected]: ~ # rm PassportApplicationForm_Main_English_V1.0 rm: no se puede eliminar `PassportApplicationForm_Main_English_V1.0 ‘: es un directorio

El directorio no se puede eliminar simplemente con el comando ‘ rm. , debe usar el modificador ‘-rf. junto con ‘ rm. ‘.

[correo electrónico protegido]: ~ # rm-rf PassportApplicationForm_Main_English_V1.0

Advertencia. “ rm-rf. ”Es un comando destructivo si accidentalmente llega al directorio incorrecto. Una vez que “ rm-rf. en un directorio, todos los archivos y el directorio en sí se pierden para siempre, de repente. Úselo con precaución.

[email protected]: ~ # lsblk NAME MAJ: MIN RM SIZE RO TYPE MOUNTPOINT sda 8: 0 0 931.5G 0 disk ├─sda1 8: 1 0 923.6G 0 part/├─sda2 8: 2 0 1K 0 parte └─sda5 8: 5 0 7.9G 0 parte [SWAP] sr0 11: 0 1 1024M 0 rom sdb 8:16 1 3.7G 0 disco └─sdb1 8:17 1 3.7G 0 parte

Desde esta pantalla estaba claro que conecté un pendrive de 4 GB. por lo que ‘ sdb1. es mi sistema de archivos para montar. Conviértase en root. para realizar esta operación y cambie al directorio /dev. donde está montado todo el sistema de archivos.

[email protected]: ~ # su Password: [ email protected]: ~ # cd/dev

Cree un directorio con cualquier nombre pero que sea relevante como referencia.

[email protected]: ~ # mkdir usb

Ahora monte el sistema de archivos ‘ sdb1. ‘al directorio’ usb. ‘.

[correo electrónico protegido]: ~ # mount/dev/sdb1/dev/usb

Ahora puede navegar a /dev/usb. desde la terminal o el sistema X-windows. y acceda al archivo desde el directorio montado.

Tiempo para Code Developer. para saber qué tan rico es el entorno Linux.

38. Comando: gcc

gcc. es el compilador incorporado para el lenguaje “ c. en el entorno Linux. Un programa simple c. guárdelo en su escritorio como Hello.c. (recuerde que la extensión ‘ .c. es imprescindible).

#include int main () printf (“Hola mundo \ n”); return 0; Compílelo [correo electrónico protegido]: ~ # gcc Hello.c Ejecútelo [correo electrónico protegido]: ~ # ./a.out Hola mundo

Nota. sobre la compilación de un c. programa, la salida se genera automáticamente en un nuevo archivo “ a.out. y cada vez que compila un programa c. el mismo archivo “ a.out ”se modifica. Por lo tanto, es un buen consejo definir un archivo de salida durante la compilación y, por lo tanto, no hay riesgo de sobrescribir el archivo de salida.

Compílelo de esta manera [protegido por correo electrónico]: ~ # gcc-o Hola Hola.c

Aquí ‘-o. envía la salida al archivo ‘ Hola. y no a ‘ a.out. . Ejecútelo de nuevo.

[email protected]: ~ # ./Hello Hello world

39. Comando: g ++

g ++. es el compilador incorporado para “ C ++. , el primer lenguaje de programación orientado a objetos. Un programa simple en c ++. guárdelo en su escritorio como Add.cpp. (recuerde que la extensión ‘ .cpp. es imprescindible).

#include usando el espacio de nombres std; int main () int a; int b; cout <<"Ingrese el primer número: \ n"; cin>> a; cout <<"Ingrese el segundo número: \ n"; cin>> b; cin.ignore (); int resultado = a + b; cout <<"El resultado es" <<"" < Nota. Al compilar un programa c ++. la salida se genera automáticamente en un nuevo archivo “ a.out. y cada vez que compila un programa c ++. el mismo archivo ” a.out. ”se modifica. Por lo tanto, es un buen consejo definir un archivo de salida durante la compilación y, por lo tanto, no hay riesgo de sobrescribirlo.

Compílelo de esta manera [protegido por correo electrónico]: ~ # g ++-o Agregar Add.cpp Ejecutarlo [ protegido por correo electrónico]: ~ # ./Añadir Introduzca el primer número: … …

40. Command: java

Java. es uno de los lenguajes de programación más utilizados en el mundo y se considera rápido, seguro y confiable. La mayor parte del servicio actual basado en web se ejecuta en Java.

Cree un programa Java simple pegando la siguiente prueba en un archivo, llamado tecmint.java. (recuerde ‘ La extensión .java. ‘es obligatoria).

class tecmint public static void main (String [] argumentos) System.out.println (“Tecmint”); compílelo usando javac [email protected]: ~ # javac tecmint.java Ejecútelo [email protected]: ~ # java tecmint

Nota. Casi todas las distribuciones vienen empaquetadas con gcc compilador. la mayor parte de distribuciones tienen g ++. y compilador java. incorporados, mientras que algunas pueden no tenerlo. Puede apt. o yum. el paquete requerido.