Кроме того, можно написать программу на C, которая вызывает нужную команду, и сохранить ее в / usr / bin.
#include <stdio.h>
#include <string.h>
int main () {
char command[50]; //notice you can change this to fit your needs
int return_val;
strcpy( command, "echo \"cd /media/Dan/evolution\" | bash -i" );
return_val = system(command);
//this is equivalent to entering the command in a new bash,
//which will return and exit
return return_val;
}
Чтобы скомпилировать его, перейдите в каталог, в котором был сохранен исходный код (в bash), и выполните (вам может понадобиться sudo):
gcc ./gb.c -o /usr/bin/gb
После дальнейших исследований здесь , я понял , просто бросать команду system()
не будет работать на баш , построенном в командах. Вот почему вам нужно создать экземпляр интерактивного bash и отобразить в нем ваши команды. Это просто слишком сложно и, вероятно, бесполезно, если, например, вы не хотите сократить вызов сценария оболочки ( some_script
вместо sh ~/radgeRayden/Scripts/some_script
).
Ссылка на функцию system ()
alias gb='cd /media/Dan/evolution'