Estendendo o programa do terminal Linux [closed]

1

Alguma idéia rápida de como escrever um programa que amplie a funcionalidade básica do terminal? Eu quero fazer tudo o que o terminal faz, mas adicionalmente faço algum processamento personalizado em qualquer coisa que o usuário digita no meu derivativo de terminal.

    
por Minaj 03.06.2016 / 23:44

3 respostas

1

Faça o download da fonte do terminal gnome, adicione seu processamento personalizado e recompile. A fonte está no link Não está claro o que o 'processamento personalizado' envolve, da sua pergunta original.

    
por 03.06.2016 / 23:48
1

Se você não precisa de dados "ao vivo", você poderia, lendo man bash , usar por PID $HISTFILE s e enviar os comandos salvos para a internet mais tarde. Uma simples questão de script, em vez de modificação de fonte. No entanto, usuários não cooperativos podem derrotar essa abordagem.

Uma de minhas respostas em AskUbuntu aborda a primeira parte do método. ~/.bash_logout ( man bash again) pode fazer o resto.

    
por 04.06.2016 / 00:55
1

A partir da sua descrição do que você quer alcançar, parece que não é tanto o terminal quanto o shell (e a julgar pelas suas tags que é bash) que você deseja estender.

O caminho para isso é modificar o código-fonte, você pode encontrá-lo na página inicial do projeto .

Outra maneira de conseguir o que você deseja é certificar-se de que todos os shells de usuários rodem dentro de script , esse programa salva tanto a entrada quanto a saída de cada comando (e para comandos que fornecem saída variável (como barras de progresso) saída pode ser difícil de ler). Você provavelmente terá que escrever algum tipo de wrapper que faça um comando adequado para colocar em /etc/passwd e salvar em um arquivo com nome exclusivo (sugiro usar uma combinação de uid e time). Se você usar a opção -f , o arquivo será gravado após cada gravação em stdout / stderr. É uma tarefa absolutamente não-trivial determinar o que é inserido e o que é produzido, mas ainda assim pode ser mais simples alcançar algo satisfatório do que modificando o bash.

    
por 04.06.2016 / 00:05