Si el siguiente ejemplo, que establece la IFS
variable de entorno en un carácter de avance de línea ...
IFS=$'\n'
- ¿Qué hace el signo de dólar media exactamente el ?
- ¿Qué hace en este caso específico?
- ¿Dónde puedo leer más sobre este uso específico (Google no permite caracteres especiales en las búsquedas y no sé qué buscar)?
Sé cuál es la IFS
variable de entorno y cuál es el \n
carácter (salto de línea), pero ¿por qué no usar la siguiente forma:
IFS="\n"
(que no funciona)?
Por ejemplo, si quiero recorrer cada línea de un archivo y quiero usar un ciclo for, podría hacer esto:
for line in (< /path/to/file); do
echo "Line: $line"
done
Sin embargo, esto no funcionará correctamente a menos que IFS
esté configurado en un carácter de avance de línea. Para que funcione, tendría que hacer esto:
OLDIFS=$IFS
IFS=$'\n'
for line in (< /path/to/file); do
echo "Line: $line"
done
IFS=$OLDIFS
Nota: No necesito otra forma de hacer lo mismo, ya conozco muchas otras ... Solo tengo curiosidad por eso $'\n'
y me pregunto si alguien podría darme una explicación al respecto.
\n
es solo una letra (escapado) n. Tienes razón en eso'\n'
y tienes una"\n"
reacción violenta seguida de n.