Chuleta de Comandos en GNU-Linux
Chuleta de Comandos en GNU-Linux
Chuleta de Comandos en GNU-Linux
Consolas virtuales: (/etc/init/tty*.conf ) Se accede a ellas con Ctrl+Alt+[F1...F6] (F7 para volver al entorno gráfico)
Reiniciar entorno gráfico: Ctrl+Alt+Backspace (o $ sudo /etc/init.d/gdm restart)
Apagar o reiniciar el equipo: $ sudo shutdown h (r: reiniciar) now / $ shutdown h 22:55 / $ shutdown h +35 (minutos)
Limpiar la pantalla de la terminal / Reiniciarla / Nueva pesta ña: $ clear (o pulsar CTRL+L) / $ reset / SHIFT+CTRL+T
Calculadora / Calendario / Fecha actual: $ bc (quit: sale) / $ cal (calendario de marzo del 2010: $ cal 03 2010) / $ date
Mostrar procesos en ejecución: $ top (q: salir, k: matar proceso) / $ ps aux / $ pstree / $ sudo gnomesystemmonitor
Finalizar o matar un proceso: $ pkill <una_parte_del_nombre_proceso> / killall 9 (matar proceso) <nombre_proceso> /
$ kill 9 <PID> (para saber el PID: $ pidof <nombre_proceso> / $ top / $ ps aux | grep <nombre_proceso>)
Ver los mensajes del buffer del kernel generados durante el arranque y depuraci ón de aplicaciones: $ dmesg
Ayuda/Info de comandos: $ man (k busca palabra en el manual) <cmd> (“q” salir, “/” para buscar) / $ whatis <cmd>
Mostrar la salida de un comando paginada / en orden alfanum érico: $ comando |less (q para salir) / $ comando |sort
Redirigir la salida de un comando a un archivo: $ comando > archivo (para que no sobreescriba el archivo: >>)
(para redirigir los errores: 2> archivo) (para que no muestre mensajes en la consola: $ comando > /dev/null 2> /dev/null)
Ejecutar comandos en background: $ <comando> & (<comando>, <CTRL+Z>, $ bg) (Listar los procesos que se están
ejecutando: $ jobs) (Volver a un comando en background: $ fg <número del proceso>) (Matar un proceso: $ kill %1 %2 etc.)
Ejecutar un comando a continuación de otro: $ cmd1; cmd2 (Ejecutar cmd2 solo en el caso de que cmd1 se haya
completado con éxito: $ cmd1 && cmd2) (Ejecutar cmd2 solo si cmd1 ha fallado: $ cmd1 || cmd2)
Ejecutar un comando cada 2 segundos y mostrar los cambios: $ watch d <comando> ($ watch d cat /proc/loadavg)
Relacionar la salida de un comando con la entrada de otro: $ comando1 | comando2 (es como si la salida/información del
primer comando pasara por una tubería al segundo comando)
Retrasar la ejecución de un comando: $ sleep 10 (retrasa 10 segundos) (12m: 12 minutos, 2h: 2 horas etc.)
Crear nombre alternativo para un comando: $ alias byebye=”shutdown h now” (añadir al final de /etc/bash.bashrc)
Historial de comandos: $ history ($ !84 para ejecutar el comando #84 del historial) ($ !rm para pedir el último “rm”)
(Si pulsamos CTRL+R, según vamos escribiendo nos va indicando el comando del hist órico que cumple el patrón dado)
Buscar la ubicación de un comando: $ whereis <comando>
Buscar un comando si no te acuerdas del nombre: $ apropos <palabra_clave> (ej: Para buscar “df” $ apropos space)
Listar contenido de un directorio: $ ls (lh listado largo y tamaño de los archivos de forma entendible para los humanos)
(a muestra ocultos) (R muestra subdirectorios) (S ordena por tamaño) (X ordena por extensión) (F añade <*> <@> </>)
Buscar ficheros o directorios: $ sudo find <ruta> name <fichero/directorio> (Archivos con +/ de x KB: size + número)
Buscar texto en los archivos: $ grep “texto” <archivo> (No case sensitive: i) (Recursivo: r) (Mostrar solo el fichero: l)
Mostrar las diferencias entre dos archivos: $ diff (i: no case sensitive) <arch1> <arch2> (También podemos usar $ sdiff)
Listar tamaño de un archivo o directorio / de las particiones: $ du hs / $ df h
Copiar: $ cp ir (pedir confirmación para sobreescribir) (copiar un directorio) <Origen> <Destino> (p: recursivo)
Mover o renombrar: $ mv i (si queremos que nos pida confirmación) <Origen> <Destino>
Borrar / Borrar directorios vacios: $ rm ir (pide confirmación y borra directorios) / $ rmdir <directorio> (p: recursivo)
Destruir datos: $ shred z u <fichero/partición> (sobreescribir con datos aleatorios 25 veces + paso de ceros + eliminar)
Crear directorio: $ mkdir <directorio> (p: recursivo, para crear “$ mkdir uno/dos/3/cuatro” si el directorio /uno no existe)
Cambiar permisos de un fichero/directorio: $ chmod R (recursivo) 722 (propietario, grupo, otros) <fichero/directorio>
(Permisos: 4 = “lectura”, 2 = “escritura”, 1 = “ejecución”, 0 = “sin permiso”)
Cambiar propietario/grupo de un fichero/directorio: $ chown R (recursivo) <propietario:grupo> <fichero/directorio>
Mostrar el contenido de un archivo: $ cat, $ more, $ less <archivo>
Mostrar las 10 últimas/primeras líneas de un fichero: $ tail (n número de líneas) <fichero> / $ head <fichero>
Editor de ficheros: $ nano, $ pico, $ vim (o con el escritorio Gnome: $ gedit)
Mostrar tipo de fichero: $ file <fichero> (o $ file *)
Dividir un archivo en varios más pequeños: $ split <archivo> b 1m/k (divide en archivos de 1 Mb/Kb)
Unir archivos divididos con split: $ cat archa archb archc archd > archivo (o también: $ cat arch[abcd] > archivo)
Encriptar / desencriptar archivos: $ gpg c <archivo> / $ gpg <archivo.gpg>
Comprimir / Descomprimir: $ rar a r (recursivo) p (con password) <archivo.rar> <ruta> / $ rar e <archivo.rar>
Sincronizar dos carpetas: $ rsync aR delete exclude /tmp/ <directorio_origen> <directorio_destino>
Apt: $ sudo aptitude install / reinstall / remove / purge (elimina paquetes y sus archivos de configuración) / update / upgrade
/ clean (elimina los ficheros de paquetes descargados /var/cache/apt/arhives/) / autoclean (borra los paquetes obsoletos) /
hold (no actualizar un programa). Añadir un repositorio: $ addaptrepository <repositorio> (están en /etc/apt/sources.lst)
Buscar el nombre exacto de un paquete: $ aptcache search <palabra / descripción / posible nombre del paquete>
Instalar paquetes .deb: $ dpkg i <paquete> (r: desisntalar) (purge: desinstalar y eliminar sus archivos de configuración)
Listar ruta de los archivos de un paquete instalado: $ dpkgquery L <paquete> (W para información del paquete)
Descargar ficheros desde http o ftp: $ wget (c Para continuar con un archivo parcialmente descargado)
<URL>
$ wget k r p erobots=off U mozilla <URL> (Descargar toda una página y convertir enlaces para verlos localmente)
$ wget r p erobots=off U mozilla A.jpg <URL> (Para descargar solo los archivos .jpg)
Cambiar a usuario root en la consola: $ sudo s
Mostrar usuarios activos / información del usuario actual / últimos logins: $ w / $ id / $ last
Mostrar los procesos que están usando un puerto / fichero: $ fuser v <puerto>/tcp / $ lsof +D <ruta_del_fichero>
Mostrar conexiones activas / puertos escuchando: $ sudo netstat napt / $ sudo netstat putall / $ gnomenettool
Ver la ruta que siguen los paquetes de un host a otro:
$ traceroute (I: trazar ruta con paquetes ICMP) <host>
Tiempo que tardan los paquetes en ir a un host y volver: $ ping <host>
Ver datos del propietario de un dominio: $ sudo whois <dominio/IP> (el dominio sin “www.”)
Mostrar información del Hardware (en HTML) / dispositivos USB/PCI: $ sudo lshw html > archivo / $ lsusb / $ lspci
Mostrar unidades montadas: $ mount | column t (para mostrar alineado en columnas)
Mostrar información sobre los discos duros: $ sudo hdparm – I <dispositivo>
Listar tabla de particiones: $ sudo fdisk l
Información sobre el sistema de archivos / listar espacio usado: $ df Th (T: muestra tipo de sistema de ficheros)
Comprobar sistema de archivos: $ fsck vf (muestra más información y fuerza verificación) <dispositivo> (desmontado)
Nomenclatura de unidades y particiones: Unidades: si son IDE: /dev/hd(a,b,c...) y si son SATA: /dev/sd(a,b,c...)
Particiones: /dev/hda(1,2,3...) /dev/hde(1,2,3...) /dev/sda(1,2,3...)
Montar unidades: $ sudo mount t <sistema_archivos> <dispositivo> <punto_de_montaje> o <opciones>
Sistemas de archivos habituales: vfat, ntfs, ext3, swap, iso9660 (auto: para que autodetecte el sistema de archivos)
Opciones más usadas: ro (solo lectura), rw (lectura y escritura), exec/noexec (permite/no permite la ejecución de comandos)
auto (las particiones se montan automáticamente en el arranque del sistema), user/nouser (cualquier usuario puede/no puede
montar la partición) defaults (rw, suid, dev, exec, auto, nouser, async).
Para que se monte una unidad automáticamente al iniciar el sistema hay que editar el archivo ' /etc/fstab' y añadirla ahí.
Y para montar las unidades del fstab sin reiniciar el sistema hacemos: $ sudo mount a (solo se montarán las particiones
que no tengan puesta la opción noauto)
Desmontar unidades: $ sudo umount <dispositivo / punto_de_montaje>
Formatear disco: $ sudo mkfs.vfat/ext3/etc. <dispositivo> / $ sudo gparted (Primero hay que desmontar la unidad)
Clonar disco/CD: $ dd if=/dev/cdrom of=imagen.img conv=noerror,sync (muestra mensajes de error pero no se detiene)
Montar una imágen ISO: $ sudo mount t iso9660 o loop <archivo.iso> <punto_de_montaje>
Crear una imágen ISO de un directorio: $ mkisofs r J o file.iso <directorio> (r: extensión Rockridge: los archivos
mantienen sus atributos y permisos originales en Linux) (J: extensión Joliet: Los archivos pueden tener nombres largos)
Grabar en un CD una imágen ISO: $ cdrecord scanbus (para buscar el dispositivo) / $ cdrecord dev=x,x,x imágen.iso
Borrar un CD regrabable: $ cdrecord v dev=/dev/cdrom blank=fast force
Rippear un CD de audio y pasarlo a MP3: $ cdparanoia B / $ lame <archivo.wav> <archivo.mp3>
Reproducir un MP3 / Controlar el volumen: $ mpg321 z (reproducción aleatoria) v <archivo/s.mp3> / $ alsamixer
Convertir imágenes: $ convert (resize 1024x768 para redimensinoarla) <imagen.png> <imagen.jpg>
Comodines: (*) cualquier sucesión de caracteres, (?) único carácter, [aei58] conjunto de caracteres, [^aei58] se cumple para
cualquier carácter no encerrado en los corchetes, (~) directorio /home.
Información sobre la estructura de directorios en GNU/Linux: $ man hier
mikelete 03/03/10