#!/bin/bash -proszę o opisanie

JA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Witam. Muszę opisać w jednym zdaniu to "'#!/bin/bash'' - chodzi mi o to że trzeba napisać co to robi.

Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
JA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

ej a mogę napisać coś takiegoscreenshot-20210327204334.png

Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
1

Możesz, tylko to nie będzie prawdą. Skrypt się wykona tam, skąd go uruchomisz. W szczególności więc:

Kopiuj
$ cat ~/skrypt.sh
#!/bin/bash
echo $(pwd)
$ ~/skrypt.sh
/home/althorion
$ cd Projects
$ ~/skrypt.sh
/home/althorion/Projects
JA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

To jak tak kilkoma własnymi słowami napisać

elwis
  • Rejestracja: dni
  • Ostatnio: dni
1

@jacekggg: Nie, bo ten komentarz zostanie dodany do listy argumentów programu wykonującego, jak chcesz napisać komentarz do tego to w następnej linii. Inna sprawa to treść komentarza: to jest informacja jaki program ma uruchomić skrypt (względnie, z jakimi parametrami ma być uruchomiony).

Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
0

Tak jak w tym artykule z Wikipedii napisano — jest to informacja dla systemu operacyjnego o tym, że resztę tego pliku należy traktować jako skrypt dla wskazanego interpretera (tutaj: /bin/bash).

JA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

czyli mogę napisać : "pokazuję jaki program ma uruchomić skrypt?

Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
0

To już znacznie bliżej.

JA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

A ten opis jest dobry ??
screenshot-20210328144936.png

hauleth
  • Rejestracja: dni
  • Ostatnio: dni
2

L1 - Ustala interpreter, czyli program, który ma "zrozumieć" instrukcje podane niżej i je wykonać.
L4 - drukuje/wysyła tekst na standardowe wyjście
L5 - pobiera wartość do zmiennej, a nie "ustala nazwę zmiennej"
L9 - pobiera nazwę operacji, a nie "wywołuje wynik"
L10 - jeśli $opr jest równe ciągowi znaków +, a nie "jeżeli dodawanie"; skrypt w tym miejscu nie wie co to "dodawanie"
L12-13 - można to zapisać w jednej linii echo $(expr "$a" + "$b") lub nawet echo $(($a + $b)) (to ostatnie to tzw. bashizm, czyli składnia rozszerzająca POSIX przez GNU Bash, skopiowana w paru innych powłokach)
L10-26 - można to zapisać za pomocą case zamiast drabinki ifów.

JA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Dzięki wielkie

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.