A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Curso de Programaci贸n en Bash Shell

Curso de Programaci贸n en Bash Shell

Marco Antonio Toscano Freire

Marco Antonio Toscano Freire

Archivos y Directorios

30/43
Recursos
  • Para crear directorios utilizamos el comando mkdir seguido del nombre que queremos colocar.

  • Para crear archivos utilizamos el comando touch seguido del nombre que queremos colocar.

Aportes 20

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Para validar si el usuario pasa el n煤mero correcto de par谩metros

if [[ $# -ne 2 ]]; then
    echo "N煤mero de par谩metros incorrectos"
    exit 1
fi

if [[ $1 == "d" ]]; then
    mkdir -m 755 $2
    echo "Directorio $2 creado correctamente"
    ls -la $2
elif [[ $1 == "f" ]]; then
    touch $2
    echo "Archivo creado correctamente"
    ls -la $2
else
    echo "No existe esa opci贸n: $1"
fi

agregue al principio unas lineas para verificar que esten pasando el numero correcto de argumentos :

#!/bin/bash
#Programa para crear archivos y directorios

if [ $# -ne 2 ]; then
    echo "El uso correctodel comando es: "
    echo "$0 d directorio_a_Crear"
    echo "$0 f archivo_a_Crear"
else
    if [ $1 = "d" ]; then
        mkdir -m 755 $2
        ls -l $2
        echo -e "\nDirectorio creado correctamente"
    elif [ $1 = "f" ]; then
        touch $2
        ls -l $2
        echo -e "\nArchivo creado correctamente"
    else
        echo -e "\n $1: Opcion invalida"
    fi
fi

Jajaj me da gracia que el profe para todos los ejemplos copia y pega un archivo anterior como si lo fuese a usar, y termina borrando todo lo de adentro

M茅todo para crear un archivo sin modificar sus tiempos de acceso (lo que realmente hace touch. La creaci贸n de un archivo es un side-effect):

([ -e $file ] && echo "El archivo ya existe") || (touch $file && echo "El archivo fue creado")

M茅todo para crear un directorio s铆 y solo s铆, el mismo no existe:

mkdir -p $dir

Por si alguien olvido los operadores:

-gt mayor
-lt menor
-ge mayor o igual
-le menor o igual
-eq igual
-ne distinto

Igualmente, dejo un link que puede interesarles. https://www.atareao.es/tutorial/scripts-en-bash/condicionales-en-bash/#

El tema de el tema de鈥 Mas vale que pregunten esto en el examen

Si quieren desplegar el nombre del directorio creado cambien por ls -ld $2. El comando ls -la $2 despliega su contenido.

Realmente al usar mkdir -m 755, los permisos se est谩n asignando de la siguiente manera: el propietario tiene permisos de lectura, escritura y ejecuci贸n; el grupo propietario y otros reciben los permisos de lectura y ejecuci贸n solamente.

Hay que recordar que los valores son los siguientes: 4 (lectura), 2 (escritura) y 1 (ejecuci贸n). Sumando 7 si se asignan todos los permisos y sumando 5 si solo se cuenta con los permisos de lectura y ejecuci贸n.

Para eliminar el directorio y el archivo que se indican en el video:

rm -rf prueba 
rm -rf prueba.txt

Queda as铆:

# ! /bin/bash
# Programa para ejemplificar la creacion de archivos y directorios
# Autor: Marco

echo "Archivos - Directorios"
#$1: primer argumento que recibe nuestro programa
#$2: segundo argumento que recibe nuestro programa.

if [ $1 = "d" ]; then
        #Damos todos los permisos al usuario, Lectura+Escritura+Ejecucion y Lectura+escritura al grupo y a otros usuarios
        mkdir -m 755 $2
        echo "Directorio creado correctamente"
        #$2: Verificamos con que permisos fue creado el directorio usando ls -la
        ls -la $2
elif [ $1 == "f" ]; then
        touch $2
        echo "Archivo creado correctamente"
        #$2: Verificamos con que permisos fue creado el archivo usando ls -la
        ls -la $2
else
        echo "No existe esa opci贸n: $1"
fi

el tema, del tema, que les iba a hablar, tiene un tema muy importante que es el tema que hace que el tema, sea un tema realmente importante.

  1 # !/bin/bash
  2 # Programa para ejemplificar la creaci贸n de archivos y directorios
  3 # Autor: Diego Ramirez - @diegodev
  4 
  5 echo "Archivos - Directorios"
  6 # $1: primer argumento que recibe nuestro programa
  7 # $2: Segundo argumento
  8 if [ $1 = "d" ]; then
  9     # Damos todos los permisos al usuario, lectura+escritura al grupo
 10     # Y finalmente lectura y escritura a cualquier otro usuario
 11     mkdir -m 755 $2
 12     echo "Directorio creado exitosamente"
 13     # $2: verificaremos con que permisos fue creado el directorio
 14     # con ls -la
 15     ls -la $2
 16 elif [ $1 == "f" ]; then
 17     touch $2
 18     echo "Archivo creado correctamente"
 19     # $2: verificaremos con que permisos fue creado el archivo
 20     # con ls -la
 21     ls -la $2
 22 else
 23     echo "No existe esa opci贸n: $1"
 24 fi

5 es lectura y ejecuci贸n 馃槂

Pueden utilizar la redirecci贸n >> para crear el archivo:

echo "Hola, mundo" >> $NAME

Si quieren mostrar el 谩rbol de un directorio prueben tree /directorio/

Yo solucione el error con el doble corchete aun sin pasarle argumentos al script

7:32
Para mostrar correctamente la informaci贸n de un directorio (con sus respectivos permisos), en el script deben reemplazar:

ls -al $2

Con una de las siguientes opciones:

ls -al | grep $2
ls -ald $2

Hola, Ejercicio.

# ! /bin/bash
# Programa para crear archivos y directorios
# Author Diego Beltran histagram @diegodevelops

echo "Archivos Ditrectorios"

if [ $1 = "d" ]; then
    mkdir -m 755 $2
    echo "Directorio creado correctamente"
    ls -la $3
elif [ $1 = "f" ]; then
    touch $2
    echo "Archivo creado correctamente"
    ls -la $3
else
    echo "No existe esa opci贸n: $1"
fi```
#!/bin/bash

if [ $1 = "d" ]
then
    mkdir -m 755 $2
    echo "Directory created successfully"
    ls -la $2
elif [ $1 = "f" ]
then
    touch $2
    echo "File created successfully"
    ls -la $2
else
    echo "The entered option does not exist: $1"
fi