Мне нужен сценарий удара, который делает следующее:
Конкретно я хочу:
/my/work/dir/
/my/work/dir/
, выполненный source bin/activate
/my/work/dir/
, например. ls
Очень похожему вопросу дали следующий ответ для сценария (адаптированный к моим требованиям):
#!/usr/bin/env bash
konsole --noclose --workdir /my/work/dir/ -e 'bash -c 'source bin/activate''
Это действительно открывает новый терминал внутри /my/work/dir/
, но терминал не является интерактивным.
user@userMachine: /my/work/dir$
отсутствует, который позволяет мне выполнять дальнейшие команды и что-либо, что я ввожу (например. pwd
) возвраты ничто, просто новые строки.
Необходимо указать что терминал сделать после выполнения команды source bin/activate
. Вы хотите активную сессию удара, таким образом, необходимо работать bash
. Кроме того, существует mes с кавычками. Таким образом, сценарий мог быть:
#!/usr/bin/env bash
konsole --noclose --workdir /my/work/dir/ -e 'bash -c "source bin/activate; exec bash"' &
&
в конце добавляется для хранения основного терминала применимым, в случае, если Вы выполняете тот сценарий из другого окна терминала.
exec
команда могла быть опущена, и можно использовать только bash
.
Вот немного ответов подобных вопросов, выделенных gnome-terminal
:
Я не могу прокомментировать, но от того, что я понимаю, что могу предложить
#!/bin/bash
cd /my/work/dir/
source bin/activate
konsole