GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa fa "set -f" in Korn Shell?

Nel libro “A guide to aix 3.2”, si dice che si può usare il comando Korn Shell set -f per “disabilitare la generazione dei nomi dei file”, ma cosa significa?

Cosa succede con set -f ?

Risposta accettata:

set -f è il modo portatile (cioè POSIX) per disabilitare l'espansione del nome file.

Quando abilitato (per impostazione predefinita o con set +f ), l'espansione del nome del file è un'operazione eseguita dalla shell che sostituisce, quando possibile, gli argomenti della riga di comando contenenti:

  • presenza di caratteri jolly (? =ogni singolo carattere e * =qualsiasi numero di caratteri)
  • intervalli racchiusi tra parentesi quadre (ad es. [a-z12] =qualsiasi carattere da a a z o 1 o 2 )
  • elenchi non corrispondenti (ad es. [^a-z] =qualsiasi carattere non compreso nell'intervallo a a z )
  • e classi di caratteri (ad es. [[:xdigit:]] =qualsiasi carattere che può essere utilizzato per rappresentare un numero esadecimale)

dai nomi di file che li corrispondono.

Se disabilitati, questi argomenti rimangono invariati.

$ pwd
/etc/samba
$ echo *
lmhosts smb.conf
$ echo *o??
smb.conf
$ set -f
$ echo *
*
$ echo *o??
*o??

Linux
  1. Cosa fa "lc_all=c"?

  2. Cosa significa `:-` in uno script di shell?

  3. Cosa significa e commerciale alla fine di una riga di script di shell?

  4. Cosa fa Eco $? Fare??

  5. Che cosa significa [e-mail protetta] in uno script di shell?

Che cos'è la shell in Linux?

Cosa significa essere "sh compatibile"?

Cosa fa esattamente Grub_gfxpayload_linux=text?

Che cos'è Login Shell in Linux?

Cos'è un file .sh?

Cosa fa kill -- -0?