Ошибка скрипта Bash на моем компьютере, но НЕ на некоторых других

сценарий:

waktu=$(date +"%H")
kelompok="E20"
dir_skrg=$(pwd)

if (( $waktu >= 5 && $waktu <= 10 ))
then
    salam="pagi"
elif (( $waktu >= 10 && $waktu <= 3 ))
then
    salam="siang"
elif (( $waktu >= 4 && $waktu <= 7 ))
then
    salam="sore"
else 
    salam="malam"
fi

echo “Selamat $salam $kelompok dengan user $USER, sekarang pukul $waktu dan pada direktori $dir_skrg”

он дает ошибку:

script1.sh: 5: script1.sh: 14: not found
script1.sh: 8: script1.sh: 14: not found
script1.sh: 11: script1.sh: 14: not found

, но не в Ubuntu моего друга. и кто-нибудь знает, почему?

14 - это час, когда я запускаю скрипт, я полагаю, по какой-то причине он думает, что 14 - это файл

3
задан 25 September 2012 в 04:57

2 ответа

Похоже, что он запускается как скрипт shell (sh), а не как bash. Попробуйте запустить его следующим образом:

bash script.sh

или введите следующую строку в качестве первой строки вашего скрипта

#!/bin/bash

Затем запустите как ./script.sh

0
ответ дан 25 September 2012 в 04:57

Добавьте #!/bin/bash в начало вашего скрипта в качестве первой строки.

Примечание: Это называется шебанг. Более подробную информацию об этом можно найти здесь здесь .

Дайте вашему сценарию правильные разрешения.

chmod a+x <script_name>

Запустите ваш скрипт снова.

./<script_name>
0
ответ дан 25 September 2012 в 04:57

Другие вопросы по тегам:

Похожие вопросы: