O objetivo do exercício é treiná-lo de uma maneira diferente, de modo que uma resposta com um script bash de 20 linhas para resolver seu problema realmente não ajudará. Para colocar a questão em outras palavras
How can user Alice, using off-the-mill Unix commands only, determine whether user Bob is active/typing?
Uma forma de resolver isso é observar todas as informações que Bob (ou os processos executados por Bob) estão "vazando" através da funcionalidade padrão do Unix, neste caso principalmente a tabela de processos (acessada por ps
, top
e um monte de outras ferramentas). Para descobrir quais informações estão disponíveis, é melhor experimentar:
- Faça login uma vez e execute
python gameProgram.py
com um amigo seu (não digite nada, deixe-o ocioso) - Faça o login com uma segunda sessão e use
ps
para examinar o processopython
. Alguma informação muda enquanto ninguém está digitando ou tudo fica igual entre chamadas diferentes paraps
? - Comece a digitar / conversar com seu amigo
- Use
ps
novamente para ver se alguma coisa muda na saída agora (pelo menos alguma coisa). Você pode usar isso a seu favor?
Quando você tiver o básico (ou seja, saber quais informações de ps
são relevantes para determinar a atividade do usuário), combine tudo em um script de shell.