Взгляните на man urxvt
:
pointerBlank: boolean
True: blank the pointer when a key is pressed or after a set number
of seconds of inactivity. False: the pointer is always visible
[default].
[...]
pointerBlankDelay: number
Specifies number of seconds before blanking the pointer [default
2]. Use a large number (e.g. 987654321) to effectively disable the
timeout.
Это могло быть тем, что Вы ищете. (Страница справочника также объясняет, где установить эти директивы Xresource.)
Можно выполнить то, что Вы хотите как это:
$ gnome-terminal -e "bash -c '<cmd1>;<cmd2>;exec $SHELL'"
Это откроется <cmd1>
, когда это будет завершено, это откроется <cmd2>
, наконец это оставит Вас в командной строке exec $SHELL
.
Например:
$ gnome-terminal -e "bash -c 'vim;vim;exec $SHELL'"
Выполнения vim
, если я закрываю 1-е vim
, 2-е vim
запускается. Когда 2-й закрывается, меня оставляют при терминальной подсказке.
Попробовать gnome-terminal -e "myprogram1; myprogram2"
. Вы могли также попробовать a &&
вместо ;
.
myprogram1; myprogram2
отличается, чем myprogram1 && myprogram2
. Точка с запятой ;
средства это myprogram2
выполняется после myprogram1
, независимо от его состояния возврата (было ли выполнение успешно, или возвратило ошибку). &&
средства это myprogram2
выполняется только если myprogram1
работал успешно. Вы видите пример этого при компиляции программ из источника: ./configure && make && make install
означает, что осуществление каждой последовательной программы зависит от успешного выполнения предыдущей команды - make install
не будет работать если make
неудавшийся.
– MattDMo
12.07.2013, 17:26
Можно вставить программы ~/.bashrc
файл
Это допустимо для оболочки удара при использовании ее. Каждый раз, когда Вы открываете терминал, eitheir через tty или терминал гнома, он выполнится.
В основном Вы просто добавляете в конце файла свои программы, которые будут выполняться.
.bashrc
свободный от материала, который работает автоматически (если я действительно не хочу, чтобы он работал каждый раз, как установка огибающих переменных) и вместо этого вставляют условные выражения, такие как проверка, чтобы удостовериться, что я нахожусь в X и т.д.
– MattDMo
12.07.2013, 17:53
Если вы хотите выполнить много команд после запуска терминала лучшим подходом было бы написать функцию, экспортировать ее и вызвать эту функцию. Создайте сценарий оболочки, подобный приведенному ниже, для соответствия вашему приложению:
my_function(){
command1
command2
.
.
.
commandn
}
export -f my_function
$(x-terminal-emulator -e "bash -c 'my_function'")
У вас также может быть несколько функций. Но тогда вам нужно будет написать другую функцию, которая будет действовать как основная, т.е. которая вызывает все остальные функции. Итак, вы настраиваете свой терминал на выполнение этой основной функции, которая позаботится обо всем остальном.
exec
делает. – tripleee 12.07.2013, 17:42exec $SHELL
заменяет оболочку, не создавая новый процесс. При наблюдении командной строки, прежде чем начинается каждая команда, не выполнимо здесь данный нет подсказки для показа. Bash выполняется через-e
, это обычно отображало бы подсказку, но в этом случае мы говорим Bash командам выполнения,-c
, такcmd#1
выполнения, когда это сделано,cmd#2
выполняется Bash. Когдаcmd#2
выполнения, мы говорим Bash заменять себя (exec ...
) с$SHELL
, который является/bin/bash
.exec $SHELL
первый раз, где существует на самом деле подсказка для отображения. – slm♦ 12.07.2013, 18:01