lunes, 11 de septiembre de 2023

SCRIPT LINUX


RESUMEN DE COMANDOS

  • Información del sistema

arch: mostrar la arquitectura de la máquina (1).
uname -m: mostrar la arquitectura de la máquina (2).
uname -r: mostrar la versión del kernel usado.
cat /proc/cpuinfo: mostrar información de la CPU.
cat /proc/meminfo: verificar el uso de memoria.
cat /proc/version: mostrar la versión del kernel.
cat /proc/net/dev: mostrar adaptadores de red y estadísticas.
cat /proc/mounts: mostrar el sistema de ficheros montado.
lsusb -tv: mostrar los dispositivos USB.
date: mostrar la fecha del sistema.
cal 2020: mostrar el calendario de 2020.
cal 07 2011: mostrar el mes julio de 2020.

  • Apagar (Reiniciar Sistema o Cerrar Sesión)

shutdown -h now: apagar el sistema (1).
init 0: apagar el sistema (2).
telinit 0: apagar el sistema (3).
shutdown -h hours:minutes &: apagado planificado del sistema.
shutdown -c: cancelar un apagado planificado del sistema.
shutdown -r now: reiniciar (1).

amaya@amaya-pc ~ $ echo \#\!/bin/bash>prueba_iso.sh
amaya@amaya-pc ~ $ ls prueba_iso.sh 

amaya@amaya-pc ~ $ echo '#!/bin/bash' > prueba_iso1.sh
amaya@amaya-pc ~ $ ls prueba_*
prueba_iso1.sh  prueba_iso.sh

amaya@amaya-pc ~ $ touch prueba_iso2.sh
amaya@amaya-pc ~ $ ls pr*

prueba_iso1.sh  prueba_iso2.sh  prueba_iso.sh


  • Archivos y Directorios

cd /home: entrar en el directorio “home”.
cd ..: retroceder un nivel.
cd ../..: retroceder 2 niveles.
cd ~user1: ir al directorio user1. (Alt Gr+4)
cd –: ir (regresar) al directorio anterior.
pwd: mostrar el camino del directorio de trabajo.
ls: ver los ficheros de un directorio.
ls --author -l: ver los ficheros de un directorio.
ls -g Mostrar solo el autor, con formato simple.
ls -l: mostrar los detalles de ficheros y carpetas de un directorio.
ls -a: mostrar los ficheros ocultos.
ls -d *[0-9]*: mostrar los carpetas que contienen números.
ls -la Formato largo con archivos ocultos.
ls -cl Ordenar por nombre teniendo en cuenta cuando se modificaron por última vez.
ls -lh Con formato largo y con total de cuanto pesan los archivos.
ls -r Ordenado al revés.
ls -R Orden de árbol, incluyendo contenido de los directorios.
ls -m Listar separando con comas
ls -lSr |more: mostrar el tamaño de los ficheros y directorios ordenados por tamaño.
tree: mostrar los ficheros y carpetas en forma de árbol comenzando por la raíz.(1)
mkdir dir1: crear una carpeta o directorio con nombre ‘dir1’.
mkdir dir2 dir3: crear dos carpetas o directorios simultáneamente (Crear dos
directorios a la vez).
mkdir -p CarpetaGeneral/{carpeta1,carpeta2,carpeta3,carpeta4}
mkdir -p CarpetaGeneral1/{carpeta1,carpeta2/{subdirectorio1,subdirectorio2},carpeta3,carpeta4}
rm -f file1: borrar el fichero llamado ‘file1’.
rmdir dir1: borrar la carpeta llamada ‘dir1’.
rm -rf dir1: eliminar una carpeta llamada ‘dir1’ con su contenido de forma recursiva. (Si lo borro recursivo estoy diciendo que es con su contenido).
rmdir dir1 dir2: borrar dos carpetas (directorios).
mv dir1 new_dir: renombrar o mover un fichero o carpeta (directorio).
cp file1 dir1_new: copiar un fichero.
cp file1 file2 dir1_new: copiar dos ficheros al unísono.
cp dir1_new/* . : copiar todos los ficheros de un directorio dentro del directorio de
trabajo actual.

  • Encontrar archivos

find / -name dir1_new: buscar fichero y directorio a partir de la raíz del sistema.
find / -user amaya: buscar ficheros y directorios pertenecientes al usuario ‘user1’.
find /home/amaya -name \*.txt: buscar ficheros con extensión ‘. txt’ dentro del directorio ‘/ home/user1’.
find /home/amaya/shell -type f -atime +100: buscar ficheros no usados en los últimos 100 días.
find /home/amaya/shell -type f -mtime -10: buscar ficheros creados o cambiados dentro de los últimos 10 días.
find /home/amaya/dir1_new  -name \*.sh -exec chmod 755 '{}' \; buscar ficheros con extensión ‘.sh’ y modificar permisos.
which halt: mostrar la senda completa (el camino completo) a un binario /
ejecutable.

  • Monitoreando y depurando

top: mostrar las tareas de linux usando la mayoría cpu.
ps -eafw: muestra las tareas Linux.
pstree: mostrar un árbol sistema de procesos.

  • Espacio de Disco

df -h: mostrar una lista de las particiones montadas.
du -sh dir1: Estimar el espacio usado por el directorio ‘dir1’.
du -sk * | sort -rn: mostrar el tamaño de los ficheros y directorios ordenados por
tamaño.

  • Manipulación de texto

cat file1 file2 .. | command <> file1_in.txt_or_file1_out.txt: sintaxis general para
la manipulación de texto utilizando PIPE, STDIN y STDOUT.
cat file1 | command( sed, grep, awk, grep, etc…) > result.txt: sintaxis general
para manipular un texto de un fichero y escribir el resultado en un fichero nuevo.
cat file1 | command( sed, grep, awk, grep, etc…) » result.txt: sintaxis general
para manipular un texto de un fichero y añadir resultado en  un fichero existente.
grep hola /home/amaya/shell/hola.sh: buscar palabras “hola” en el fichero ‘/home/amaya/shell/hola.sh’.
grep ^Hola /home/amaya/shell/hola.sh: buscar palabras que comienzan con “Hola” en fichero /home/amaya/shell/hola.sh
grep [0-9] /home/amaya/shell/hola.sh: seleccionar todas las líneas  del fichero ‘/home/amaya/shell/hola.sh’ que contienen números.
sed ‘s/stringa1/string2/g’ example.txt: sustituir  “string1” con “string2” en ejemplo.txt
sed ‘/^$/d’ example.txt: eliminar todas las líneas en blanco desde el ejemplo.txt
sed ‘/ *#/d; /^$/d’ example.txt: eliminar comentarios y líneas en blanco de ejemplo.txt
echo ‘ejemplo’ | tr ‘[:lower:]’ ‘[:upper:]’: convertir minúsculas en mayúsculas.
sed -e ‘1d’ result.txt: elimina la primera línea del fichero ejemplo.txt
sed -n ‘/string1/p’: visualizar solamente las líneas que contienen la palabra “string1”.

Enlace a Apuntes y ejercicios