Niekedy mám ťažkosti so spustením ./file.sh, ale môžem spustiť príkaz bash file.sh. Aký je rozdiel medzi týmito dvoma príkazmi? Vykonáva ./file.sh nejakú inú implementáciu sh?
odpovede:
3 pre odpoveď č. 1Ak "file.sh" nie je spustiteľný, potom ./file.sh
nebude fungovať, ale bash file.sh
vôle.
Ak "file.sh" nezačína riadkom #!/bin/bash
(alebo iná cesta k platnému tlmočníkovi bash) ./file.sh
nebude fungovať, ale bash file.sh
vôle.
V podstate, aby skript mohol vyzerať ako spustiteľný súbor, musí:
- Majú vykonať povolenie.
- Začnite s čiarou
#!/path/to/interpreter
.