Manipulación de permisos de archivos y directorios

Código
Intermedio
Bash
Curso de Bash
25 min
150 XP
Actualizado: 26/11/2024

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

Configura permisos y propiedades de archivos y directorios en un proyecto usando chmod, chown y chgrp en un script de Bash.

Tienes una estructura de directorios y archivos para un proyecto de desarrollo de software. Es necesario configurar adecuadamente los permisos y la propiedad de cada elemento para garantizar la seguridad y el correcto acceso por parte de los usuarios y grupos involucrados.

La estructura inicial es la siguiente:

proyecto/
├── bin/
│   └── script.sh
├── src/
│   ├── main.py
│   └── util.py
├── logs/
│   └── app.log
└── README.md

Permisos de archivos y directorios:

  • El directorio proyecto debe tener permisos que permitan al propietario leer, escribir y ejecutar; al grupo leer y ejecutar; y a otros solo leer.
  • El directorio bin debe permitir al propietario y al grupo leer, escribir y ejecutar; y a otros solo ejecutar.
  • Los archivos dentro de bin deben ser ejecutables únicamente por el propietario y el grupo.
  • El directorio src debe permitir al propietario leer, escribir y ejecutar; al grupo leer y ejecutar; y a otros sin permisos.
  • Los archivos dentro de src deben ser legibles y editables por el propietario y el grupo, pero sin permisos para otros usuarios.
  • El directorio logs debe permitir al propietario leer, escribir y ejecutar; al grupo leer y ejecutar; y a otros sin permisos.
  • El archivo app.log dentro de logs debe ser escribible únicamente por el propietario.
  • El archivo README.md debe ser legible por todos los usuarios, pero solo escribible por el propietario.

Propiedad de archivos y directorios:

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

  • Todos los archivos y directorios deben tener como propietario al usuario desarrollador y como grupo al grupo devs.

Escribe un script de Bash que realice las siguientes acciones:

  1. Cambie el propietario y el grupo de todos los archivos y directorios dentro de proyecto a desarrollador y devs respectivamente.
  2. Aplique los permisos descritos anteriormente a cada directorio y archivo.

Consideraciones:

  • Utiliza los comandos chmod, chown y chgrp de manera adecuada para cumplir con los requisitos.
  • Asegúrate de aplicar los permisos de forma recursiva donde sea necesario.
  • El script debe ser ejecutable y contener los comandos necesarios para realizar todos los cambios en una única ejecución.

Solución al ejercicio de programación en Bash

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en Bash para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con ejercicios de programación en Bash

Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Asistente de IA

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades en Bash

⭐⭐⭐⭐⭐
4.9/5 valoración