BASH hoja de trucos
Este es mi truco BASH hoja. Estoy aquí para recoger fragmentos de útiles de código y las construcciones que tenía a Google de vez en cuando o man'en lo contrario. El artículo me sirve personalmente, como un libro de referencia, pero podría ser útil a los demás que a menudo tienen la cáscara de Bourne-una vez más que hacer.
Moler
mientras que [1] de bucle sin fin # hacer echo "Blah" hecho
for i in $ (ls / etc) hacer echo $ i hecho for i in `seq 1 10`; hacer echo $ i hecho
Caso
case "$ 1" en a) print "a" ;; b) eco b " ;; *) echo "$ 1 no es A o B" ;; esac
Switches para la prueba: http://bash-hackers.org/wiki/doku.php/commands/classictest~~HEAD=NNS o / Usr / bin / [- help
If-Then-Else
if ["$ 1" = "a"] y luego print "a" más echo "no" fi
dpkg + apt
# Lista los archivos instalados de un paquete dpkg-L [nombre del paquete] # Lista de archivos en un paquete dpkg-c [paquete.deb] # Información sobre un paquete dpkg-i [paquete.deb] # Lista todos los paquetes instalados dpkg-l dpkg - get-selections> getselections.txt # Instalación de importación de selección de archivos dpkg - set-selections <getselections.txt
netstat
# Lista todos los puertos abiertos al exterior netstat-LPN | grep LISTEN | grep-v localhost
mdadm
# Pon a prueba tu correo electrónico # Usa mailaddr de / etc / mdadm / mdadm.conf mdadm - monitor de -1 / dev/md0-t # Dispositivo para añadir a la matriz mdadm - add / dev/md0 / dev/sda1 # Retire el dispositivo de la matriz mdadm - remove / dev/md0 / dev/sda1 # Eliminar los dispositivos defectuosos mdadm - manage / dev/md0 - remove defectuosa mdadm - manage / dev/md0 - remove no # Vuelva a instalar un gestor de arranque comida grub> root (hd0, 0) grub> setup (hd0) # Disco salida de información smartctl-i / dev / sdx
ext
# Disklabel establece e2label etiqueta del dispositivo
Pantalla
# Pantallas para generar automáticamente las secuencias de comandos y la pantalla de inicio de la tarea pantalla-S [nombre de usuario]-d-m [script.sh] # Crear una nueva pantalla o cambiar existentes screen-r-d [nombre de usuario] # Combinación de teclas para salir de una pantalla CTRL - A - D
mysql
# Todas las bases de datos en un archivo de volcado de mysqldump-u root-psecret - todas las bases de datos> # backup.sql sólo la estructura de base de datos en un archivo de volcado de mysqldump-u root-psecret - no-data - todas las bases de datos-> backup.sql # Dump Restore mysql-u root-psecret <backup.sql # raíz de restablecimiento de contraseñas / etc / init.d / mysql stop eco CONTRASEÑA PARA "SET'root' @'localhost' = CONTRASEÑA ('new password')"> ~ / setrootpassword.sql mysqld_safe - init-file = ~ / setrootpassword.sql # [Ctrl] + [c] / etc / init.d / mysql start rm-f ~ / setrootpassword.sql imagemagick
# Cambiar el tamaño de todas las imágenes en el directorio actual mogrify-cambiar el tamaño de 800x600. / *. JPG # Todas las imágenes en el directorio actual a convertir PNG mogrify en formato png. / *
unionfs-fusible
# Unión entre a y b en c # Se publicarán en un unionfs-fusible-o de vaca / home /-RW a = :/ home / b = RW / home / ww / Desktop / c
ffmpeg
# Convertir flv a 3gp ffmpeg-i-f 3gp-vcodec in.flv h263-s 176x144-ab 12.2k-ar 8000-ac 1 out.3gp # Convertir desde casi cualquier formato a cualquier otro como la pérdida de libertad como sea posible ffmpeg-i infile.ext-pass 2-sameq outfile.ext
encontrar
# Buscar archivos, y hacer algo con ellos encontrar. -Name "* mp3."-Exec archivo {} \; # Enlaces blandos pueden ver y encontrar. -Type l-exec ls-l {} \; # Incluir todos los archivos en un directorio find / directorio-type f | wc-l
sudo
# / Etc / sudoers Usuario # nombre de usuario comando password sin un permiso de ejecución de una privilegiada # (Que se adjunta al final debe ser de / etc / sudoers) nombre de usuario ALL = NOPASSWD: / sbin / reboot
iptables
# Permitir todo en INPUT iptables-F; iptables-P INPUT ACCEPT # Depurar conexiones Número de contadores de paquetes en una cadena a 0 iptables-Z INPUT # Cadena con el paquete de la pantalla del contador iptables-L INPUT-v
FTP montaje
mkdir / tmp / mnt modprobe fusible curlftpfs-v-o no vacío ftp.host.com-o user = usuario: contraseña / tmp / mnt umount / tmp / mnt
umount "dispositivo está ocupado" - encontrar de bloqueo de proceso de
fuser-m [punto de montaje] página web mirrorn wget
wget km http://www.website.com SAMBA montaje
mount.cifs / / 192.168.0.1/share / media / share-o username = $ USERNAME, password = $ PASSWORD 32bit o 64bit
getconf LONG_BIT / Etc / fstab
NFS: 192.168.0.1 :/ home / home nfs rsize = 8192 = 8192 wsize, duro, intr 0 0
Disk Full - Buscar cerdos de memoria
apt-get install ncdu ncdu # / Monta sin ningún otro FS / mnt # (Si se monta la cubierta de datos en el disco local) mnt / bind / - montaje, du-sm / mnt
Cifrado completo del sistema
Muy buen tutorial por Andreas Haerter: http://blog.andreas-haerter.com/2011/06/18/ubuntu-festplattenvollverschluesselung-lvm-luks
Disco a través de la clonación de LAN
dd if = / dev / hda | ssh-c blowfish-C root@otherbox.ip.addr dd of = / dev / hda Corriente de salida de UNIX TIMESTAMP (ET)
date +% s Asterisco
# Convertir archivo de sonido en formato compatible con Asterisk ffmpeg-i-ar 8000-ac ./input.mp3 1 de 64. / output.wav

08 de abril 2010
Molienda:
- Al mismo tiempo sin fin: aunque es cierto; ...
- Análisis de Ls es una especie de no-no: cd / etc for i in *; ... o, simplemente, en su caso el archivo / etc / *. Las tasas de crecimiento de ellos para siempre.
Caso:
- No citar la palabra de los parámetros de la prueba, según sea necesario (pero no incorrectos)
Prueba:
- Cuando el uso de / usr / bin / [se utiliza para la codificación y / usr / bin / [en lugar de [(incorporado bash)
- Preferencia: el [[]] Palabra (bash)
ImageMagick:
- .. / [JJ] [PP] [Gg], o ayudar a otro método de casos y falta de sensibilidad puede