mktemp y trap en Bash
Espacio de trabajo privado que se limpia solo.
# mktemp entrega un archivo o directorio privado de trabajo
work=$(mktemp -d)
trap 'rm -rf "$work"' EXIT
echo "working in $work"
printf 'draft\n' > "$work/notes.txt"
cp "$work/notes.txt" "$work/notes.bak"
ls "$work" | sort
# aquí no hace falta rm: el trap limpia al salir
Cómo funciona
mktemp -dcrea un directorio que solo esta corrida conoce.- El
trap ... EXITlo elimina por cualquier ruta de salida. - Adentro se puede crear y copiar sin miedo.
Palabras clave y builtins usados aquí
echoprintftrap
El intento, en números
- Líneas
- 10
- Caracteres a escribir
- 273
- Tokens
- 48
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 34 segundos.
Paso 3 de 3 en Scripts y seguridad; paso 24 de 26 en Fundamentos del lenguaje.