Uz to jede, zacalo to davat hlasku "/home/grafen/FTPskript.sh: 2: /home/grafen/FTPskript.sh: Syntax error: "(" unexpected" proc takova zmena najednou nevim,a tuhle hlasku sem opravil prekvapivym zpusobem, #!/bin/sh zmenil na #!/bin/bash, by me taky zajimalo odkad sem tohle prevzal.
Výchozím shellem Ubuntu je Dash:
gdh@gdh:~$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 úno 19 13:13 /bin/sh -> dash
Dash je lehčí a rychlejší, než Bash, který je s ním kompatibilní, ale umí plno věcí navíc.
Když skript spustíš z shellu přímo, jen zapsáním cesty, třeba takto:
./skript
nahlédne shell do souboru, zda není na prvním řádku cesta k interpreteru, kterému by ho předal, jinak ho zkusí interpretovat sám. Pokud tam najde #!/bin/sh, spustí skript takto:
/bin/sh ./skript
Ale v případě, že pro spuštění použiješ příkaz
bash skript
nemá shell žádný důvod zjišťovat, komu skript předat a při vlastní interpretaci je ten první řádek jen pouhým komentářem.