Próbuję napisać prosty skrypt, który uruchamia terminal i uruchamia polecenie workon foo. Innymi słowy, chcę po prostu zrobić:
mate-terminal -e workon foo
Jednak to nie działa, ponieważ workonpolecenie wymaga ode mnie:
export WORKON_HOME=~/work;
source /usr/local/bin/virtualenvwrapper.sh
Normalnie te linie są uruchamiane automatycznie, ponieważ są w moim .bashrc, ale najwyraźniej mate-terminal -enie robi source ~/.bashrc. Jeśli jednak spróbuję dodać te wiersze do mojego skryptu:
mate-terminal -e export WORKON_HOME=~/work; source /usr/local/bin/virtualenvwrapper.sh; workon foo
to też nie działa. MATE mówi mi:
There was an error creating the child process for this terminal
Failed to execute child process "export" (No such file or directory)
Mam ten sam problem, jeśli pomiń exporti po prostu zrób mate-terminal -e source ...lub jeśli spróbuję użyć .zamiast source( mate-terminal -e . ...).
Nie jestem pewien, w jaki sposób można załadować wszystko, jeśli nie mogę, export, source, lub ., ale musi być jakiś sposób, ponieważ mate-terminal -ebyłoby niemal bezużyteczna bez niego.
Czy ktoś wie, jak mogę skonfigurować swoje środowisko w terminalu, od którego zacząłem mate-terminal -e?
Failed to parse arguments: Unknown option -c. Potem wypróbowałem drugą wersję, która działała świetnie ... przez około 1ms; potem terminal został zamknięty (prawdopodobnie dlatego, że polecenie zostało zakończone). Więc wtedy wypróbowałem formularz skryptu i próbowałem wykonać go w obie strony, tak jak sugerowałeś, ale miał ten sam problem (tj. Terminal został natychmiast zamknięty). Jeśli masz jakieś sugestie, jak mogę rozwiązać problem z zamykaniem terminala, chętnie zaakceptuję tę odpowiedź.