Я новичок в bash и, кажется, не могу заставить его скомпилировать код C без раздражающих сообщений. Я уверен, что это точки с запятой, потому что, если я их вообще удалю или изменю, это в значительной степени сломается. Я получаю следующие предупреждения / ошибки: ": not found::" и больше ничего не повторяется для каждой строки. Любая помощь приветствуется.
#!/bin/bash
GCC=/usr/bin/gcc ;
INSERTS="10000 20000 50000 100000 150000 250000 375000 500000 750000 1000000"
CODESRC=./code.c;
#compile with options
$GCC -DDEBUG -o codetest $CODESRC;
#run with parameters
./codetest $INSERTS;
редактировать:
Код компилируется и работает нормально. Если я удалю все точки с запятой и попытаюсь запустить его, используя sh test.sh
Получаю следующее.
test.sh: 6: /usr/bin/gcc
: not found
test.sh: 8: ./codetest: not found
редактировать: Ах, глупый я; это была проблема с окончанием строки windows / unix, которая стала очевидной при запуске ./test.sh и получении /bin/bash^M: bad interpreter
Точки с запятой не нужны, но в остальном сценарий выглядит нормально.
редактировать
which gcc
/bin/bash
вы должны запустить его как ./test.sh
не sh test.sh