En el libro “Una guía para aix 3.2”, dice que uno puede usar el comando Korn Shell set -f
para "deshabilitar la generación de nombre de archivo", pero ¿qué significa?
Qué sucede con set -f
?
Respuesta aceptada:
set -f
es la forma portátil (es decir, POSIX) de deshabilitar la expansión del nombre de archivo.
Cuando está habilitado (por defecto o con set +f
), la expansión del nombre de archivo es una operación realizada por el shell que reemplaza, cuando es posible, los argumentos de la línea de comandos que contienen:
- ocurrencias de comodines (
?
=cualquier carácter único y*
=cualquier número de caracteres) - rango encerrado entre corchetes (por ejemplo,
[a-z12]
=cualquier caracter dea
az
, o1
o2
) - listas que no coinciden (por ejemplo,
[^a-z]
=cualquier carácter que no esté en el rangoa
az
) - y clases de caracteres (por ejemplo,
[[:xdigit:]]
=cualquier carácter que se pueda usar para representar un número hexadecimal)
por los nombres de archivo que coincidan con ellos.
Cuando está deshabilitado, estos argumentos no se modifican.
$ pwd
/etc/samba
$ echo *
lmhosts smb.conf
$ echo *o??
smb.conf
$ set -f
$ echo *
*
$ echo *o??
*o??