Risposte:
Stai confondendo bashcon csh.
In bashcome in qualsiasi tipo Bourne shell, setè il comando per impostare impostazioni (impostazioni di configurazione guscio, come -f, -C, -o noclobber...) e parametri posizionali ( $1, $2...).
set FILEM="razrax"
Imposta $1su FILEM=razrax.
$ set FILEM="razrax"
$ echo "$1"
FILEM=razrax
La sintassi per l'assegnazione delle variabili nelle shell tipo Bourne è:
VAR=value
(nessuno spazio consentito su entrambi i lati di =).
kshe alcune altre shell tipo Bourne (mksh, pdksh, zsh) possono anche assegnare variabili di array con set:
set -A array value1 value2
zsh, bash, yashE versioni più recenti di kshutilizzo questa sintassi invece:
array=(value1 value2)
Al contrario, in csho tcsh, la sintassi è:
set VAR = value
set array = (value1 value2)
(spazi intorno =facoltativi).
In rc/ esshells:
VAR = value
array = (value1 value2)
(spazi intorno =facoltativi).
set -Cimposta l' -Copzione (uguale a set -o noclobber). set fooassegna fooa $1(ed $#è 1, ( $2, $3non sono impostati se precedentemente impostati)). Controlla il manuale della tua shell per i dettagli.