Parametr pozycyjny w funkcji, bash

Parametr pozycyjny w funkcji, bash
Stanislaw Gasior
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

Jak to poprawić i dlaczego to nie działa:
https://4programmers.net/Pastebin/15004

$1 jest liczbą

KamilAdam
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Silesia/Marki
  • Postów: 5550
2

Nie ma błędu. Działa dokładnie tak jak to napiłeś, BTW $1 ma wartość "" (pusty string).

Teraz działa tak jak chciałeś:

Kopiuj
#!/bin/bash
function pre
{
for(( i=1; i<=$1; i++ ))
do
echo g
done
}

sleep 4
pre $1

$1 w funkcji nie jest globalnym parametrem skryptu tylko parametrem funkcji

Stanislaw Gasior
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

O już widzę moją niewiedzę :)
Dzięki!

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.