Inicie o bash com um conjunto de aliases específico

1

Eu preciso começar o bash de tal forma que um alias específico seja definido. Este alias específico seria

alias exit="echo Cannot exit"

Isso é importante porque estou executando um programa que só pode ser executado a partir de um terminal, e posso executar muitos deles, mas apenas a partir de uma sessão de terminal. Às vezes, eu acidentalmente mato e todas as crianças morrem. E este é um programa de modelagem bem conhecido, e eu não posso realmente mudar a maneira como o gerenciador de licenças funciona.

Outra opção seria passar um sinalizador para este script bash específico, que seria testado em .bashrc e definir o alias ali. Mas também não sei como fazer isso.

    
por Иван 03.04.2015 / 16:38

2 respostas

1

screen -S mystupidprogram bash --rcfile ~/.bashrc-mystupidprogram

onde ~/.bashrc-mystupidprogram contém

. ~/.bashrc
setopt ignoreeof
enable -n exit

Executando a tela (ou tmux se você preferir) permite que você se conecte a esse shell de qualquer lugar com screen -S mystupidprogram -rd (a tela chama isso de ). Para desconectar de uma sessão de tela, mas deixá-la em execução, a tela chama desanexando , digite Ctrl + A D .

    
por 04.04.2015 / 02:59
0

Leia o manual do Bash em SHELL BUILTIN COMMANDS. Você poderia envolver seu programa em um script de shell que usa o arquivo trap .

    
por 03.04.2015 / 17:16

Tags