Lista de comandos útiles en Linux
Un listado de comandos útiles para realizar tareas desde consola, algo que muchas veces nos puede llegar a sacar de apuros en diferentes situaciones.
Es un listado en constante actualización y es recopilado de varios sitios. Se puede descargar un archivo en formato PDF desde https://github.com/freelanceparaguay/shellExamples
1 Manejo de unidades de disco
1.1 Visualizar unidades de almacenamiento
Ver las unidades de bloques.
lsblk
Visualizar las unidades usb existentes con sus nombres y sistemas de archivos.
lsusb
Desmontar unidad usb
umount /run/media/usuario/pendrive
1.2 Crear un USB boot
Escribir una imagen .ISO para hacer un USB booteable.
dd if=Fedora-Live-Security-x86_64-20-1.iso of=/dev/sdb bs=4M
1.3 Formatear un disco usb
Formatear un disco usb con sistema de archivos vfat.
mkfs.vfat -n /dev/sdd
mkfs.vfat /dev/sdb -I -n "nombre_del_volumenMIPENDRIVE"
1.4 Formatear discos como ext3
Formatear una partición como ext3.
mke2fs -j /dev/hdaX
1.5 Montar un archivo ISO para poder leerlo.
Se pueden montar archivos .iso en directorios.
mount fichero.iso /mnt/directorio/ -t iso9660 -o ro,loop=/dev/loop0
mount -o loop dvd1.iso /mnt/isodisk
1.6 Crear un ISO a partir de un directorio
Se puede utilizar la herramienta mkisofs o también dd.
mkisofs -o /tmp/cd.iso /tmp/directory/
También se puede crear usando el comando dd. La unidad de CD (dev/hdd) tiene que estar desmontada.
dd if=/dev/hdd of=fichero.iso
2 Manejo de archivos y directorios
2.1 Ordenar archivos
Ordena las líneas de todos los archivos .txt, elimina las duplicadas y lo guarda todo en resultado.txt
cat *.txt | sort | uniq > resultado.txt
2.2 Manejar archivos comprimidos
Crear archivo tar con ficheros después de una fecha
tar cvf backup.tar -N yyyy-mm-dd
Crear archivo tgz manteniendo la ruta absoluta
tar cvfzP backup.tgz /ruta/al/dir/
2.3 Buscar archivos
Busca la cadena ‘unit1′ en el directorio /etc y subdirectorios en los archivos tipo f
find /etc -depth -type f -exec grep -il unit1 {} \;
Buscar archivos de tamaño mayor a 1000 Megas
find . -size +1000M
2.4 Listar archivos
Listar archivos y sumarizados y con bloques en Megas, ordenar en forma numérica y reversa para mostrar los de tamaño mayor, seleccionar los primeros 20.
du -sm * | sort -nr | head -20
2.5 Reemplazar una cadena en varios archivos
Reemplazar una cadena en varios ficheros.
find *.php -type f | xargs sed -i s/nombre/otronombre
find . -type f | xargs sed -i s/nombre/otronombre/g
Reemplaza una cadena por otra en todos los archivos del directorio DirectoryName guarda los originales con la extensión “.save”
perl -e "s/old_string/new_string/g;" -pi.save $(find DirectoryName -type f)
2.6 Reemplazar una cadena en un archivo
Otro ejemplo, buscar la cadena {PROXY_USER} (cadena completa incluso con las llaves) en el archivo settings.xml, el resultado se imprime en otro archivo llamado nuevosetting.xml
sed -s 's/${PROXY_USER}/pasantes/g' settings.xml > nuevosetting.xml
2.7 Partir archivos grandes en varios pedazos
Partir en varias partes un archivo grande.
split -b4300m MiPelicula.avi MiPeliculaPartida
Unir partes de archivos separados en un solo archivo.
cat MiPeliculaPartida.* > MiPelicula.avi
2.8 Buscar una cadena de texto en todos los archivos encontrados
find . -name *.ext -exec grep "cadena_buscada" '{}' \; -print > ~/archivo_destino
2.9 Renombrar archivos
Renombra *.png.jpg a *.jpg
rename 's/\.png\.jpg$/\.jpg/' *.jpg
2.10 Verificar integridad de archivos utilizando md5sum y shasum
Un archivo puede ser alterado, la forma de poder conocer si cambió en un determinado momento es obtener un hash de control y luego compararlo con la copia del archivo. El hash generado queda guardado en un archivo.
Crear hash :
shasum -b archivo.jpg > shasum.txt
Verificar hash:
shasum -c shasum.txt
Crear hash:
md5sum -b archivo.jpg > md5sum.txt
Verificar hash:
md5sum -c md5sum.txt
2.11 Convertir archivos según codificaciones latin1 a utf-8 y viceversa
Convertir un archivo de latin1 a utf-8
iconv -f latin1 -t utf8 archivo_entrada > archivo_salida
Vice-versa; de utf8 a latin1
iconv -f utf8 -t latin1 archivo_entrada > archivo_salida
3 Manejo de imágenes y videos
Es necesaio contar con las herramientas imagemagick y ffmpeg.
3.1 Limpiar datos exift de imágenes .jpg
A veces conviene limpiar los metadatos de las imágenes antes de subirlas a la web.
exiftool -all=imagen.jpg
3.2 Convertir imágenes de format vectorial a png
Se cuenta con varios archivos, los cuales se encuentran numerados. Ejemplo: archivo01.svg, archivo02.svg. Se convierte a archivos con el mismo nombre pero formato .png.
convert archivo*.svg midirectorio/archivo%02d.png
3.3 Modificar el tamaño de imágenes
Se cuenta con varios archivos, numerados. Ejemplo: archivo01.png, archivo02.png. Se cambian los tamaños a 300x300.
mogrify -resize 300x300 directorio/*.png
3.4 Crear un video a partir de un bloque de imágenes
Teniendo imágenes en formato .png y numeradas con dígitos de dos cifras al final, se produce un archivo de video en formato .avi. Ejemplo: bloque01.png, bloque02.png, etc.
ffmpeg -r 1 -i bloque_%02d.png video.avi
3.5 Crear un video desde la terminal
Se puede grabar videos para tutoriales desde la terminal
ffmpeg -f x11grab -s 1024×768 -r 25 -i :0.0 -qscale 0 video.avi
ffmpeg -f x11grab -r 25 -i :0.0 -qscale 0 video.avi
4 Manejo de navegadores web
Modo seguro de Firefox (por ejemplo, para desactivar extensiones que funcionan mal)
firefox --safe-mode
lynx http://www.domain.com/
4.1 Descargar páginas web
Se pueden descargar páginas web desde línea de comandos.
wget -nH -r -np http://www.domain.com/bla/bla/bla/
5 Configuración de consola
Borrar historial de comandos.
history -c
Comentarios
Publicar un comentario