Skip to content

Este trabalho tem por objetivo fazer com que os alunos experimentem na prática o ambiente de programação Unix/Linux para tratamento de processos e para a comunicação entre processos por pipes (canais de envio de bytes).

License

Notifications You must be signed in to change notification settings

Durfan/ufsj-shellso

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sistemas Operacionais 🐚 shellso

Codacy Badge

Trabalho prático de implementação de um Interpretador de comandos para a disciplina de Sistemas Operacionais/UFSJ.

Instalação e funcionamento

make
make debug # binario com debug
make clean # remover binario
./shellso # symlink para o binario, inicia o shell
./shellso [commands file] # processamento de comandos a partir de um arquivo

Comando de finalização

ShellOS/SOTP1 0.8v
┌/currentpath/
└[user@host]$ fim # ou CTRL+D

Arquivo de Comandos

./shellso [commands file]

Formato de arquivo

Um comando por linha, exemplo:

ls -l
ls -laR => arquivo
wc -l <= arquivo &
cat -n <= arquivo => arquivonumerado
cat -n <= arquivo | wc -l => numerodelinhas
cat -n <= arquivo | wc -l => numerodelinhas &
fim

Exemplo de saída

ShellOS/SOTP1 0.8v
► $ls -l
total 32
drwxr-xr-x 3 saci saci 4096 out 11 20:29 bin
drwxr-xr-x 3 saci saci 4096 out 11 20:29 build
-rw-r--r-- 1 saci saci  175 out 11 20:05 commands
drwxr-xr-x 2 saci saci 4096 out  9 19:55 docs
-rw-r--r-- 1 saci saci 6608 out  9 19:55 Makefile
-rw-r--r-- 1 saci saci  976 out 11 14:35 README.md
lrwxrwxrwx 1 saci saci   17 out 11 20:29 shellso -> bin/debug/shellso
drwxr-xr-x 3 saci saci 4096 out 11 14:35 src
► $ls -laR => arquivo
► $wc -l <= arquivo &
PID 13454: background
► $cat -n <= arquivo => arquivonumerado
► $cat -n <= arquivo | wc -l => numerodelinhas
809
► $cat -n <= arquivo | wc -l => numerodelinhas &
PID 13459: background
► $fim
PID 13454: Headshot!

Acknowledgments

About

Este trabalho tem por objetivo fazer com que os alunos experimentem na prática o ambiente de programação Unix/Linux para tratamento de processos e para a comunicação entre processos por pipes (canais de envio de bytes).

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published