Teoría
Linux tiene una gran regla: "Todo es un archivo"


Crontab
Los cron jobs en Linux permiten ejecutar comandos automáticamente en fechas y horas específicas.
crontab -l
→ Para listar las tareas crontab.crontab -e
→ Para editar las tareas crontab.
Si este comando se ejecuta por primera vez, se le pedirá al usuario que elija un editor de texto para editar este archivo. Para crear un comando programado, el usuario necesita crear registros basados en la siguiente plantilla:
🔴🟡🟢
m h dom mon dow command

También puedes comprobar los privilegios de los archivos así, para localizar trabajos cron:
/etc/crontab
/etc/cron.d
/var/spool/cron/crontabs/root

Operadores Lógicos
Símbolos o palabras clave en Linux que se usan para realizar tareas más avanzadas y de este modo administrar la consola de comandos de una forma más eficiente.
&&
(Y)
Comando1 && Comando2
Ejecuta Comando2 solo si el Comando1 tiene éxito (retorna código de salida cero). Si el Comando1 falla, el Comando2 no se ejecuta
II
(O)
Comando1 || Comando2
Ejecuta Comando2 solo si el Comando1 falla (retorna código de salida distinto a cero). Si el Comando1 tiene éxito, el Comando2 no se ejecuta
;
(Punto y coma)
Comando1 ; Comando2
Ejecuta Comando2 independientemente del éxito o fracaso del Comando1. Usado para ejecutar comandos en secuencia
&
(Ejecución en segundo plano)
Comando &
Ejecuta el comando en segundo plano, permitiéndote seguir trabajando en la terminal sin esperar a que se complete
!
(NO)
! Commando
Ejecuta el comando y devuelve el código de salida inverso. Si el comando tiene éxito, el comando ! falla, y viceversa
|
(TUBERÍA)
Comando1 | Comando2
Redirige la salida del Comando1 a la entrada del Comando2. Se utiliza pra transferir datos entre comandos y filtrar la salida

Gestión de permisos
Los permisos son reglas que determinan quién puede acceder, leer, escribir o ejecutar archivos y directorios del sistema. Los permisos controlan qué acciones pueden realizar los diferentes usuarios en los archivos y directorios, lo que ayuda a proteger la seguridad y la integridad de los datos del sistema.
Representación Estándar ↓

El primer bit indica el tipo de archivo, como pueden ser:

El resto de bits representan los permisos del propietario del fichero o directorio, lo del grupo al que pertenece este usuario, y los del resto de usuarios.

Representación Numérica o en Octal ↓
La notación en base octal representa los permisos en formato númerico. Los permisos se representan como una secuencia de tres números, donde cada número corresponde a un conjunto específico de permisos: el propietario, el grupo y otros.

La notación octal se basa en la suma de los valores númericos de los permisos:

🔴🟡🟢
$ chmod 755 documento.txt
El propietario tiene permisos de lectura, escritura y ejecución (4 + 2 + 1 = 7)
El grupo tiene permisos de lectura y ejecución (4 + 1 = 5)
Otros usuarios tienen permisos de lectura y ejecución (4 + 1 = 5)

Flujo de datos y redirecciones
En Linux, existe algo llamado flujo de datos, que se usan para transmitir datos de entrada/salida en programas. Cada uno tiene su propio descriptor, un identificador númerico que ayuda a interactuar con ellos más fácilmente.
STDIN
→ Descriptor 0. Entrada estándar (<)STDOUT
→ Descriptor 1. Salida estándar (>)STDERR
→ Descriptor 2. Salida de errores (2>)
El operador de redirección (>) tiene dos modos de funcionamiento, el modo normal en el que el fichero de salida puede sobrescribir o el modo que irá añadiendo nuevas líneas del fichero, sin sobrescribir ningún dato. Este último modo se selecciona con el operador (>>).
Ejemplos:
comando > fichero.txt
El comando envía la salida a un fichero de texto para su almacenamiento. Si el fichero tiene algún tipo de contenido, este se sobrescribirá, es decir, se perderá todo el contenido anterior del fichero. Si no existe el fichero de salida, este se creará.comando >> fichero.txt
El comando envía la salida a un fichero de texto para su almacenamiento, pero la diferencia radica en que este caso la información se añadirá al final del archivo sin sobrescribir ningún dato.comando <<< "texto"
Esta función se denomina Here String, permite pasar en Bash una cadena de texto (de una línea) directamente a un comando sin necesidad de almacenarla en una variable o archivo temporal.
💡 Si la salida del STDOUT o STDERR la queremos descartar, se puede escribir el comando para que envíe los datos a la ruta /dev/null. Esta ruta es una especie de agujero negro que elimina todo lo que le llega.
Última actualización