Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Cześć jestem początkująca tzn. dopiero zaczełam naukę basha.
Jak sprawdzić w terminalu online czy kod poprawnie działa?
Wiem że trzeba kliknąć run, a potem nie wiem co wpisać.
#!/bin/bash if [ $# = 3 ]; then echo "wykonuje działanie" else echo "podałeś złą ilość parametrów" fi
Offline
w tym kodzie są błędy. Zamiast
$#
powinno być
$1
Kolejny błąd to przyrównanie inputu usera do wartości zmiennej. Powinnaś porównywać wartościami ( wartość inputu do wartości podstawionej pod zmienną ). Twój poprawny kod powinien wyglądać:
#!/bin/bash if [ $1 = "3" ]; then echo "wykonuje działanie" else echo "podałeś złą ilość parametrów" fi
Ostatnio edytowany przez developer (2020-11-10 12:14:11)
Offline
Uzyj tego interpretera online. Czasem jest przeciazony, ale masz pewnosc ze odpala sie w realnym srodowisku basha: https://www.onlinegdb.com/online_bash_shell
Na dole masz parametry, ktore przekazujesz do programu
Offline
developer napisał(-a):
w tym kodzie są błędy. Zamiast
Kod:
$#powinno być
Kod:
$1
Lol, weź poczytaj czym sa zmienne wbudowane w basha bo sądząc po tym co robi if to jest do dobrze zdefiniowane
https://coderwall.com/p/85jnpq/bash-built-in-variables
Ostatnio edytowany przez urbinek (2020-11-10 12:34:01)
Offline
a co do skryptu to masz warunek źle zdefinioiwany, = jest dla stringów a == dla intów
[root@xen ~]# cat tmp.sh #!/bin/bash if [ $# == 3 ]; then echo "wykonuje działanie" else echo "podałeś złą ilość parametrów" fi
[root@xen ~]# bash tmp.sh 1 podałeś złą ilość parametrów [root@xen ~]# bash tmp.sh 1 2 podałeś złą ilość parametrów [root@xen ~]# bash tmp.sh 1 2 3 wykonuje działanie [root@xen ~]# bash tmp.sh 1 2 3 4 podałeś złą ilość parametrów
Offline
apt install shellcheck
shellcheck -s bash -o all -xa twój_skrypt
www
https://www.shellcheck.net/
Ostatnio edytowany przez samu (2020-11-10 13:13:13)
Offline
Dzięki To kod wykładowcy ze studiów i właśnie próbuje zrozumieć.
Offline