Odpowiedzi:
Mylisz się bash
z csh
.
W bash
podobny w jakikolwiek podobny Bourne shell, set
jest polecenie do ustawionych opcji (ustawienia konfiguracyjne shell podoba -f
, -C
, -o noclobber
...) i parametrów pozycyjnych ( $1
, $2
...).
set FILEM="razrax"
Ustawia $1
na FILEM=razrax
.
$ set FILEM="razrax"
$ echo "$1"
FILEM=razrax
Składnia przypisywania zmiennych w powłokach podobnych do Bourne'a jest następująca:
VAR=value
(brak miejsca po obu stronach =
).
ksh
i niektóre inne powłoki podobne do Bourne'a (mksh, pdksh, zsh) mogą również przypisywać zmienne tablicowe za pomocą set
:
set -A array value1 value2
zsh
, bash
, yash
I nowsze wersje ksh
użycia tej składni zamiast:
array=(value1 value2)
Natomiast w csh
lub tcsh
składnia jest następująca:
set VAR = value
set array = (value1 value2)
(spacje wokół =
opcjonalne).
W rc
/ es
shells:
VAR = value
array = (value1 value2)
(spacje wokół =
opcjonalne).
set -C
ustawia -C
opcję (tak samo jak set -o noclobber
). set foo
przypisuje foo
do $1
(i $#
jest 1 ( $2
, $3
jest pusta, jeżeli określone wcześniej)). Szczegółowe informacje znajdziesz w instrukcji powłoki.