Paraméter értékátadás

Sziasztok!

Most ismerkedem a bash szkriptekkel, de egy problémára nem találok megoldást. Van egy függvényem, amely két paramétert vár. Azt szeretném, hogy a második paraméter értéke egyezzen meg az elsővel, amennyiben csak egy paraméterrel hívták meg a függvényt. Tehát:

function example() {
if [ -z "$2" ]; then
$2="$1"
fi
}

Ez viszont nem működik. Hogyan van ez helyesen?

Hozzászólások

Nevezd el őket:

a="$1"
b="$2"

, aztán ezekkel dolgozz. És persze nem

$a="$b"

, hanem

a="$b"

.

Nevezd el őket

Igen, elnevezéssel valószínűleg működne, de mivel most tanulásról van szó, érdekelne hogy megoldható-e a probléma újabb változó beveztése nélkül.

És persze nem $a="$b", hanem a="$b".

Igaz. Próbálkoztam simán 2-vel és $2-vel is, az utóbbit sikerült beillesztenem a hozzászólásba.

a $2-nek nem tudsz értéket adni a függvényen belül.

param2="$2"
[ -z "${param2}" ] && param2="$1"

Úgy néz ki akkor marad az elnevezés. Köszönöm mindenkinek a segítséget!