linux:bash:comandos

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
linux:bash:comandos [05/04/2019 00:47] – [filesystem] matelinux:bash:comandos [03/07/2023 03:56] (actual) mate
Línia 2: Línia 2:
 {{tag>linux bash}} {{tag>linux bash}}
 == comandos al detalle == comandos al detalle
-  * [[linux:bash:grep]]+  * uptime 
 +  * tail [-n <nn>
 +  * head [-n <nn>
 +  * sort 
 +  * watch 
 +  * wc : wordcount 
 +    * -c : caracteres 
 +    * -l : líneas 
 +    * -w : palabras 
 +  * tr : translate characters (sustitución cadenas sobre la entrada estandard. Uso com filtro en scripts) 
 +    * :lower 
 +    * :upper 
 +  * nl : numbering line 
 +  * cat 
 +    * -n : número de líneas 
 +    * -A : eliminar caracteres de control 
 +  * file 
 +  * nc : netcat 
 +  * dig : estilo nslookup. Se da el nombre del dominio y ofrece información en formato BIND 
 +    * -x: inverso, se la la IP 
 +  * nohup : Mantiene la ejecución de un comando pese a salir de la terminal 
 +    * [[https://rm-rf.es/nohup-mantiene-ejecucion-comando-pese-salir-terminal/]] 
 +  * syndaemon 
 +    * desactivar touchpad mientras escribes 
 +    * [[https://linux.die.net/man/1/syndaemon]] 
 +    * ''apt-get install xserver-xorg-input-synaptics'' 
 + 
 +  * [[linux:bash:awk]] 
 +  * [[linux:bash:alias]] 
 +  * [[linux:curl:start]] 
 +  * [[linux:bash:dd]]
   * [[linux:bash:find]]   * [[linux:bash:find]]
 +  * [[linux:bash:free]]
 +  * [[linux:bash:grep]]
 +  * [[linux:bash:less]]
   * [[linux:bash:locale]]   * [[linux:bash:locale]]
-  * [[linux:bash:xargs]] +  * [[linux:bash:lsof]] 
-  * [[linux:bash:tar]] +  * [[linux:mount:start|]] 
-  * [[linux:bash:awk]]+  * [[linux:rclone:start]] 
 +  * [[linux:rsync:start|]]
   * [[linux:bash:sed]]   * [[linux:bash:sed]]
-  * [[linux:bash:less]]+  * [[linux:sudo:start]] 
 +  * [[linux:ssh:start|]] 
 +  * [[linux:bash:tar]]
   * [[linux:vim:start|]]   * [[linux:vim:start|]]
-  * [[linux:bash:alias]] +  * [[linux:bash:xargs]] 
-  * [[linux:bash:free]]+  * [[linux:bash:blockdevices]] 
 +  * [[linux:bash:xev]] 
 +  * [[linux:bash:mlocate]] 
 +  * [[linux:bash:librerias-dinamicas]] 
 + 
 + 
  
 == ls == ls
Línia 44: Línia 86:
 <callout type="info" title="Glob" icon="true">https://en.m.wikipedia.org/wiki/Glob_(programming)</callout> <callout type="info" title="Glob" icon="true">https://en.m.wikipedia.org/wiki/Glob_(programming)</callout>
 == filesystem == filesystem
-  * ''mkdir -p /jail/{dev,bin,sbin,etc,usr,lib,lib64}'': crea estructura directorios en **jail** +  * ''mkdir -p /jail/{dev,bin,sbin,etc,usr,lib,lib64}'': crea estructura directorios en **jail** 
-  * ''echo /usr/dir1 /var/dir2 /nas/dir3 |  xargs -n 1 cp -v /path/to/file'': copia **file** en **dir1,dir2,dir3** +  * ''echo /usr/dir1 /var/dir2 /nas/dir3 |  xargs -n 1 cp -v /path/to/file'': copia **file** en **dir1,dir2,dir3** 
-  * ''diff /tmp/r/ /tmp/s/'': diferencias entre 2 directorios +  * ''diff /tmp/r/ /tmp/s/'': diferencias entre 2 directorios 
-  * ''du'' -> disk used+  * ''du'' -> disk used
     * -c : totales     * -c : totales
     * -h : human readable     * -h : human readable
Línia 55: Línia 97:
     * --exclude '*.obj'     * --exclude '*.obj'
     * listar los 3 directorios con más utilización: ''$ du -sk * | sort -nr | head -3''     * listar los 3 directorios con más utilización: ''$ du -sk * | sort -nr | head -3''
-  * ''df''+  * ''df''
     * -h : human readable     * -h : human readable
   * ''chown'':   * ''chown'':
Línia 69: Línia 111:
     * cambiar propietario/grupo recursivamente de un enlace simbólico a directorio: ''$ chown -R -H guest:family linux_symlnk''     * cambiar propietario/grupo recursivamente de un enlace simbólico a directorio: ''$ chown -R -H guest:family linux_symlnk''
     * mostrar los cambios realizados por el comando: ''$ chown -v <resto de comando>''     * mostrar los cambios realizados por el comando: ''$ chown -v <resto de comando>''
-  * ''dd'' -> comando para flujos de datos +  * ''dd'' -> comando para flujos de datos 
-    * ''sudo dd if=/dev/disk2s1 of=/Users/admin/imagen.iso'' -> graba disco a imagen ISO +    * ''sudo dd if=/dev/disk2s1 of=/Users/admin/imagen.iso'' -> graba disco a imagen ISO 
-    * ''sudo dd bs=4M if=image.iso of=/dev/sdxx'' -> graba una imagen ISO a disco (USB) +    * ''sudo dd bs=4M if=image.iso of=/dev/sdxx'' -> graba una imagen ISO a disco (USB) 
-    * ''sudo dd status=progress if=... of=...'' -> muestra estadísticas de transferencia (solo GNU Coreutils 8.24+) +    * ''sudo dd status=progress if=... of=...'' -> muestra estadísticas de transferencia (solo GNU Coreutils 8.24+) 
-    * ''sudo dd if=... | pv <-s size> | sudo dd of=...'' -> usar utilidad PV para progreso (y si le pasas el "size", hace cálculo de restante)+    * ''sudo dd if=... | pv <-s size> | sudo dd of=...'' -> usar utilidad PV para progreso (y si le pasas el "size", hace cálculo de restante)
     * [[http://askubuntu.com/questions/215505/how-do-you-monitor-the-progress-of-dd]]     * [[http://askubuntu.com/questions/215505/how-do-you-monitor-the-progress-of-dd]]
-  * ''cpio'' : como ''dd'' pero copiando solo la zona donde hay datos +  * ''cpio'' : como ''dd'' pero copiando solo la zona donde hay datos 
-  * ''split -b<tamaño> <fichero> <output>.@''+  * ''split -b<tamaño> <fichero> <output>.@''
     * corta un //fichero// en trozos de //tamaño//     * corta un //fichero// en trozos de //tamaño//
     * tamaño pueden ser bytes (b), Kilobytes (k), Megabytes (m), gigabytes(g)((a mi esté no me funcionó))     * tamaño pueden ser bytes (b), Kilobytes (k), Megabytes (m), gigabytes(g)((a mi esté no me funcionó))
-      * ''split -b100m <fichero> <output>.@'': genera ficheros de 100Mg+      * ''split -b100m <fichero> <output>.@'': genera ficheros de 100Mg
     * genera ficheros con el nombre <output>.@aa, <output>.@ab, <output>.@ac... hasta acabar     * genera ficheros con el nombre <output>.@aa, <output>.@ab, <output>.@ac... hasta acabar
     * se puede reconstruir con un ''cat'' (o entiendo que un ''type'' en MSDOS)     * se puede reconstruir con un ''cat'' (o entiendo que un ''type'' en MSDOS)
-      * ''cat <output>.* <fichero>''+      * ''cat <output>.* <fichero>''
     * [[http://quechilero.com/blog/2009/10/26/cortar-archivos-grandes-en-linux/]]     * [[http://quechilero.com/blog/2009/10/26/cortar-archivos-grandes-en-linux/]]
   * ''rename'' : renombrar ficheros con REG_EXP   * ''rename'' : renombrar ficheros con REG_EXP
     * ''-n'' : no-action (modo test)     * ''-n'' : no-action (modo test)
 +    * [[https://www.computerhope.com/unix/rename.htm]]
   * ''rm !(*.tgz|*.zip)'' : elimina todos los ficheros que no sean .tgz o .zip   * ''rm !(*.tgz|*.zip)'' : elimina todos los ficheros que no sean .tgz o .zip
     * se puede aplicar como filtro en cualquier otro comando (ls, por ejemplo)     * se puede aplicar como filtro en cualquier otro comando (ls, por ejemplo)
Línia 111: Línia 154:
     * -n o --number : añade número de línea.     * -n o --number : añade número de línea.
     * más ejemplos: [[https://www.cyberciti.biz/faq/linux-unix-appleosx-bsd-cat-command-examples/]]     * más ejemplos: [[https://www.cyberciti.biz/faq/linux-unix-appleosx-bsd-cat-command-examples/]]
-  * ''uptime'' : tiempo que lleva la máquina levantada +  * ''uptime'' : tiempo que lleva la máquina levantada 
-  * ''tail'' -> muestra 10 últimas líneas+  * ''tail'' -> muestra 10 últimas líneas
     * -n -> número de líneas a mostrar     * -n -> número de líneas a mostrar
-  * ''head'' -> muestra 10 primeras líneas+  * ''head'' -> muestra 10 primeras líneas
     * -n -> número de líneas a mostrar     * -n -> número de líneas a mostrar
-  * ''sort'' +  * ''sort'' 
-  * ''xargs'' +  * ''xargs'' 
-  * ''cut'' +  * ''cut'' 
-  * ''watch'' : ejecuta un segundo comando cada n segundos +  * ''watch'' : ejecuta un segundo comando cada n segundos 
-    * ''watch -n 5 ls -la'' +    * ''watch -n 5 ls -la'' 
-  * ''wc'' -> word count+  * ''wc'' -> word count
     * -c : cuenta caracteres     * -c : cuenta caracteres
     * -l : cuenta líneas     * -l : cuenta líneas
     * -w : cuenta palabras     * -w : cuenta palabras
-  * ''tr'' -> translate characters (sustituye cadenas sobre la entrada standard, uso como filtro en scripts)+  * ''tr'' -> translate characters (sustituye cadenas sobre la entrada standard, uso como filtro en scripts)
     * :lower     * :lower
     * :upper     * :upper
-  * ''expr <operación aritmética>''+  * ''expr <operación aritmética>''
     * importante separación entre números y operación     * importante separación entre números y operación
     * expr 1 + 1 -> devuelve 2     * expr 1 + 1 -> devuelve 2
Línia 134: Línia 177:
     * valor=`expr 1 + 1`     * valor=`expr 1 + 1`
     * valor=$( ( 1 \* 1) ) <- no importa espacio separación entre números, los paréntesis están separados por el WIKI, no han de ir así.     * valor=$( ( 1 \* 1) ) <- no importa espacio separación entre números, los paréntesis están separados por el WIKI, no han de ir así.
-  * ''bc'' -> calculadora+  * ''bc'' -> calculadora
     * ''$ echo "scale=300;4*a(1)" | bc -l'' -> 300 cifras de PI     * ''$ echo "scale=300;4*a(1)" | bc -l'' -> 300 cifras de PI
     * [[http://www.basicallytech.com/blog/index.php?/archives/23-command-line-calculations-using-bc.html]]     * [[http://www.basicallytech.com/blog/index.php?/archives/23-command-line-calculations-using-bc.html]]
-  * ''nl'' -> numbering line +  * ''nl'' -> numbering line 
-  * ''cat''+  * ''cat''
     * -n : muestra líneas     * -n : muestra líneas
     * -A : elimina caracteres de control     * -A : elimina caracteres de control
-  * ''file'' -> intenta identifiar el formato del fichero (o programa del que procede). Falsos "positivos" +  * ''file'' -> intenta identifiar el formato del fichero (o programa del que procede). Falsos "positivos" 
-  * ''time (comando)'' -> para calcular cuanto tarda en ejecutarse el comando+  * ''time (comando)'' -> para calcular cuanto tarda en ejecutarse el comando
  
 === du === du
Línia 153: Línia 196:
  
 == comunicaciones == comunicaciones
-  * ''nc'' -> netcat +  * ''nc'' -> netcat 
-  * ''dig'' -> estilo ''nslookup'', se le da el nombre del dominio y ofrece información en formato BIND+  * ''dig'' -> estilo ''nslookup'', se le da el nombre del dominio y ofrece información en formato BIND
     * -x : inverso, te da la IP     * -x : inverso, te da la IP
   * ''ping'' como ''traceroute'': <code bash>for i in {1..30}; do ping -t $i -c 1 google.com; done | grep "Time to live exceeded"</code>   * ''ping'' como ''traceroute'': <code bash>for i in {1..30}; do ping -t $i -c 1 google.com; done | grep "Time to live exceeded"</code>
Línia 161: Línia 204:
  
 == miscelaneos == miscelaneos
-  * ''hdiutil'' -> comando con verbos, relacionado con CD/DVD + ISO+  * ''hdiutil'' -> comando con verbos, relacionado con CD/DVD + ISO
     * mount : para montar una imagen ISO     * mount : para montar una imagen ISO
  
 == ejemplos == ejemplos
 === varios === varios
-  * borrar ficheros excepto los que cumplan patrón: <code bash>for a in `ls | grep -v PATRON`; do rm -fr $a; done</code> +  * borrar ficheros excepto los que cumplan patrón: <code bash>for a in `ls | grep -v PATRON`; do rm -fr $a; done</code> 
-  * desmontar todas los volúmenes montados que tengan la cadena "home_ERE":<code bash>for i in $(mount | cut -d" " -f1 | grep /home_ERE/); do umount $i; done</code>+  * desmontar todas los volúmenes montados que tengan la cadena "home_ERE":<code bash>for i in $(mount | cut -d" " -f1 | grep /home_ERE/); do umount $i; done</code>
   * Borra todos los ficheros que NO sean los indicados:<code bash>rm !(*.foo|*.bar|*.baz)</code>   * Borra todos los ficheros que NO sean los indicados:<code bash>rm !(*.foo|*.bar|*.baz)</code>
-  * Borra los ficheros de una lista TXT:<code bash>while read file; do rm "$file"; done < fichero_entrada</code> +  * Borra los ficheros de una lista TXT:<code bash>while read file; do rm "$file"; done < fichero_entrada</code> 
-  * Borra los ficheros de una lista TXT:<code bash>rm -f $(<fichero_entrada)</code>+  * Borra los ficheros de una lista TXT:<code bash>rm -f $(<fichero_entrada)</code>
   * Copia los permisos de un fichero (file1) en otro (file2):<code bash>chmod --reference file1 file2</code>   * Copia los permisos de un fichero (file1) en otro (file2):<code bash>chmod --reference file1 file2</code>
   * Crear un a serie de directorios anidados: <code bash>mkdir -p directorios/a/crear</code>   * Crear un a serie de directorios anidados: <code bash>mkdir -p directorios/a/crear</code>
   * Calcular espacio de un directorio: <code bash>du -sh <directorio></code>   * Calcular espacio de un directorio: <code bash>du -sh <directorio></code>
   * ejecutar comando sobre ficheros de directorio sin scripts:<code bash>for f in * ; do comando; done;</code>   * ejecutar comando sobre ficheros de directorio sin scripts:<code bash>for f in * ; do comando; done;</code>
-  * ignorar cierto tipos de archivos con '*': <code bash>export GLOBIGNORE='<match_ficheros_a_ignorar>' +  * ignorar cierto tipos de archivos con '*': <code bash>export GLOBIGNORE='<match_ficheros_a_ignorar>' 
-ls * <- no mostrará los ficheros que cumplan el criterio, también funciona con cp o mv (y puede que otros, mientras dependan del '*'</code>+ls * <- no mostrará los ficheros que cumplan el criterio, también funciona con cp o mv (y puede que otros, mientras dependan del '*'</code>
   * mostrar diferencias 2 archivos (que se ordenan): ''comm -12 <(sort -u File1) <(sort -u File2)''   * mostrar diferencias 2 archivos (que se ordenan): ''comm -12 <(sort -u File1) <(sort -u File2)''
  
  • linux/bash/comandos.1554450439.txt.gz
  • Darrera modificació: 05/04/2019 00:47
  • per mate