Поиск в Google обнаруживает CCsh , но это обойдется вам в 50 долларов за машину за лицензию.
В документации говорится, что CCsh компилирует сценарии Bourne Shell (не bash ...) в код C и что он понимает, как воспроизвести функциональность 50 нечетных стандартных команд, избегая необходимости их форк
.
Но CCsh не является открытым исходным кодом, поэтому, если он не выполняет то, что вам нужно (или ожидайте) вы выиграете '
Я не думаю, что вы что-нибудь найдете, потому что вы не можете «скомпилировать» сценарий оболочки. Вы можете написать простой скрипт, который преобразует все строки в вызовы system (3)
, а затем «скомпилирует» его как программу на C, но это не приведет к значительному повышению производительности по сравнению с тем, что вы сейчас используете. используя, и может неправильно обрабатывать переменные. Не делайте этого.
Проблема с "компиляцией" сценария оболочки заключается в том, что сценарии оболочки просто вызывают внешние программы.
Теоретически вы можете действительно получить хороший прирост производительности.
Подумайте обо всех
if [ x"$MYVAR" == x"TheResult" ]; then echo "TheResult Happened" fi
(обратите внимание на вызов теста, затем эхо, а также на интерпретацию, которая должна быть сделана.)
, которые можно было бы заменить на
if ( !strcmp(myvar, "TheResult") ) printf("TheResult Happened");
В C: без запуска процесса, без делать поиск пути. Много добра.