Programowanie > Bash, skrypty powłoki
Skrypty linux Prosze o pomoc
maciejkloda1:
Proszę o pomoc w zadaniu z załączniku
Z góry dziękuje
Paweł Kraszewski:
1. Podziel się kodem dotąd napisanym
2. Z czym dokładnie masz problem
maciejkloda1:
--- Kod: ---
#!/bin/bash
echo "Zadanie ze skryptów"
echo "Skrypt liczy reszte z dzielenia dwoch podanych przez ciebie liczb"
echo "Podaj pierwsza liczbe"
read L1
echo "Podaj druga liczbe"
read L2
if [ $L2 -eq 0 ];
then
echo "Druga liczba jest rowna 0 - nie mozna podzielic"
else
D= `expr $L1 % $L2`
echo "wynik dzielenia wynosi:$D"
fi
--- Koniec kodu ---
tyle dotąd mam
mam problem z wyswietlaniem sie wyniku
maciejkloda1:
a tutaj jak to wyglada
Paweł Kraszewski:
1. Wbrew pozorom spacje są ważne.
--- Kod: ---
#!/bin/bash
X=`uname` # Uruchamia uname i wynik podstawia do X (czyli X będzie równe Linux)
# -----
X= `uname` # Uruchamia wynik działania uname (czyli próbuje uruchomić program Linux) ze zmienną środowiskową X ustawioną na łańcuch pusty.
# to ekwiwalent
X="" `uname`
# czyli
X="" Linux
--- Koniec kodu ---
Zacznij korzystać z narzędzia ShellCheck, to łapie naprawdę dużo błędów. Ja pokazałem tylko ten bezpośrednio uniemożliwiający działanie, ShellCheck pokaże więcej (manifestujących się przy nietypowych argumentach).
2. W expr operator % to nie dzielenie.
--- Cytuj ---ARG1 % ARG2: arithmetic remainder of ARG1 divided by ARG2
--- Koniec cytatu ---
Nawigacja
[#] Następna strona
Idź do wersji pełnej