Quatro alternativas, mas cada uma delas tem uma desvantagem:
-
Certifique-se de que os comandos que você deseja executar no ksh sejam gravados no arquivo
mycmdse inicie o ksh da seguinte forma:cat mycmds /dev/tty | ksh -iDrawback: Você perde os recursos de edição de linha de comando do ksh.
-
Certifique-se de que os comandos que você deseja executar no ksh sejam gravados no arquivo
/tmp/mycmds$$; defina a variável de ambienteMYCMDSpara/tmp/mycmds$$antes de iniciarksh -l; e adicione o seguinte ao seu$HOME/.profile:if [ -n "$MYCMDS" ] ; then . "$MYCMDS" MYCMDS= export MYCMDS fiDrawback: Todo mundo que usa este programa tem que modificar seu
$HOME/.profile. -
Organize a coisa toda de tal maneira que os comandos que você quer executar sejam gravados em um arquivo
mycmds, que é então originado via. mycmdsno shell inicial . Coloque tudo isso em uma definição de função.Drawback : Em vez de iniciar um novo shell, você modifica o ambiente e / ou as definições de alias do inicial. Todo mundo que usa este programa tem que usar o ksh.
-
Certifique-se de que os comandos que você deseja executar sejam gravados no arquivo
mycmdse inicie um bash da seguinte forma:bash -i --init-file mycmdsDrawback: Você recebe um bash em vez de um ksh.