Eu vi em algum lugar que "o bash é usado para se comunicar com o kernel do Linux".
É aplicável apenas ao terminal? Ou todos os programas (incluindo programas que possuem GUIs) precisam passar pelo shell para concluir o processo que desejam realizar?
(Considere que estamos colorindo uma foto. Como o bash sabe o que estamos fazendo? Existe um terceiro entre o gimp e o bash para convertê-los em bash?)
Seria muito útil se você pudesse dar um exemplo para explicar :)
Responder1
Não. Apenas os usuários precisam passar por um shell para se comunicarem com o Kernel. Uso de aplicativosAPIs.
Por exemplo, se eu quiser excluir um arquivo, tenho que usar um shell ou outro e depois um aplicativo para excluir o arquivo:
- Com um shell de interface de linha de comando (CLI), como
bash
, posso usar orm
comando para excluir o arquivo. - Com um shell GUI (como Unity ou GNOME Shell), posso usar outra coisa, como o Gerenciador de Arquivos, para excluir o arquivo. O shell GUI, por sua vez, não precisa usar um shell CLI.
Tanto o Gerenciador de Arquivos quanto rm
o por sua vez podem usar a função unlink(3)
(ou de nível superior remove(3)
) (ouchamada de sistema) para fazer o trabalho real.