Nagyon új vagyok a bash-ban, és megpróbálom megírni az első hello_world a /Users/me/Study/Linux útvonalán a vim által írt tartalommal:
#! bin/bash echo Hello World
A hiba azonban végrehajtáskor következik be:
-bash: /Users/me/Study/Linux/hello_world: bin/bash: bad interpreter: No such file or directory
Sok kérdést olvastam a kérdésben, de még mindig teljesen elveszettnek érzem magam. 🙁 Nagyon hálás leszek a segítségedért.
Megjegyzések
Válasz
A bash szkript első sorának így kell kinéznie.
#!/bin/bash
Ezt “shebang-sornak” hívják, mert az első két karakter #! shebang . A shebang sor megmondja a számítógépnek, hogy mely futtatható programot kell használni a szkript többi részének értelmezéséhez. Ebben az esetben írsz egy bash szkriptet, de ugyanolyan könnyen írhatsz egy szkript a pythonhoz vagy az awk-hoz, és meg kell mondania a rendszernek, hogy melyik tolmácsot használja, annak alapján, hogy a szkript milyen nyelven van írva.
Az oka, hogy a shebang sora #! bin/bash nem működik a b mert nem adott meg érvényes értelmezési utat (általában egy abszolút utat ) a tolmácshoz. Ha kihagyja a kezdeti perjelet /, akkor a héj a bin elemet keresi az aktuális munkakönyvtárban, de nem találja meg.
Mivel csak most kezded el a bash-t tanulni, ezért javaslom elolvasni egy könyvet. Ez megment minket attól, hogy túl sok kérdést kelljen feltennie. Cameron Newham bash Shell 3. kiadásának elsajátítása nagyon jó.
Hozzászólások
- Ne feledje, hogy a
#!utáni szóköz nem fontos –#!/bin/bashés#! /bin/bashegyaránt a work és a#!bin/bashvagy a#! bin/bashcsak akkor fog működni, ha előszörcd /(tehát a bin található ). Wikipedia linkedből " Üres után! rendben vannak "
#! /bin/bashelső sor