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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2020-11-10 11:02:16

  dlugamarta - Nowy użytkownik

dlugamarta
Nowy użytkownik
Zarejestrowany: 2020-10-05

Sprawdzenie poprawności kodu Bash

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ć.

Kod:

#!/bin/bash
if [ $# = 3 ]; then
    echo "wykonuje działanie"
else
    echo "podałeś złą ilość  parametrów"
fi

Offline

 

#2  2020-11-10 12:06:53

  developer - Użytkownik

developer
Użytkownik
Zarejestrowany: 2014-03-20

Re: Sprawdzenie poprawności kodu Bash

w tym kodzie są błędy. Zamiast

Kod:

$#

powinno być

Kod:

$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ć:

Kod:

#!/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

 

#3  2020-11-10 12:33:25

  daniel1302 - Nowy użytkownik

daniel1302
Nowy użytkownik
Zarejestrowany: 2020-11-10

Re: Sprawdzenie poprawności kodu Bash

Uzyj tego interpretera online. Czasem jest przeciazony, ale masz pewnosc ze odpala sie w realnym srodowisku basha: https://www.onlinegdb.com/online_bash_shell


https://i.ibb.co/jzyjj58/image.png

Na dole masz parametry, ktore przekazujesz do programu

Offline

 

#4  2020-11-10 12:33:52

  urbinek - Dzban Naczelny

urbinek
Dzban Naczelny
Skąd: Sosnowiec
Zarejestrowany: 2009-10-01
Serwis

Re: Sprawdzenie poprawności kodu Bash

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)


A w wolnym czasie, robię noże :)
http://nginx.urbinek.eu/_photos/signature.png

Offline

 

#5  2020-11-10 13:02:07

  urbinek - Dzban Naczelny

urbinek
Dzban Naczelny
Skąd: Sosnowiec
Zarejestrowany: 2009-10-01
Serwis

Re: Sprawdzenie poprawności kodu Bash

a co do skryptu to masz warunek źle zdefinioiwany, = jest dla stringów a == dla intów


Kod:

[root@xen ~]# cat tmp.sh
#!/bin/bash
if [ $# == 3 ]; then
    echo "wykonuje działanie"
else
    echo "podałeś złą ilość  parametrów"
fi

Kod:

[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

A w wolnym czasie, robię noże :)
http://nginx.urbinek.eu/_photos/signature.png

Offline

 

#6  2020-11-10 13:11:51

  samu - Stały bywalec

samu
Stały bywalec
Skąd: ~/.linux/dug
Zarejestrowany: 2011-06-15

Re: Sprawdzenie poprawności kodu Bash

Kod:

apt install shellcheck

Kod:

shellcheck -s bash -o all -xa twój_skrypt

www

Kod:

https://www.shellcheck.net/

Ostatnio edytowany przez samu (2020-11-10 13:13:13)


https://www.debian.org/logos/button-mini.png

Offline

 

#7  2020-11-10 13:36:16

  dlugamarta - Nowy użytkownik

dlugamarta
Nowy użytkownik
Zarejestrowany: 2020-10-05

Re: Sprawdzenie poprawności kodu Bash

Dzięki To kod wykładowcy ze studiów i właśnie próbuje zrozumieć.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)