Disciplina Discipline IBI5765
Introdução à Linha de Comando Linux

Introduction to the Linux Command-Line

Área de Concentração: 95131

Concentration area: 95131

Criação: 13/11/2023

Creation: 13/11/2023

Ativação: 13/11/2023

Activation: 13/11/2023

Nr. de Créditos: 4

Credits: 4

Carga Horária:

Workload:

Teórica

(por semana)

Theory

(weekly)

Prática

(por semana)

Practice

(weekly)

Estudos

(por semana)

Study

(weekly)

Duração Duration Total Total
2 2 0 15 semanas 15 weeks 60 horas 60 hours

Docente Responsável:

Professor:

João Marcelo Pereira Alves

Objetivos:

O objetivo da disciplina é fornecer treinamento intensivo e avançado no uso de computadores na interface de linha de comando (CLI) para análise de dados em larga escala. Ao final da disciplina, estudantes oriundos da área biológica devem ser capazes de usar a CLI para visualizar, editar, manipular e sumarizar arquivos de grande tamanho, extraindo informação e conhecimento biológicos das análises de larga escala que geraram tais arquivos.

Objectives:

This course's goal is to provide intensive and advanced training in computer usage on the command-line interface (CLI) for large-scale data analysis. At the end of the course, students from biologically-oriented backgrounds should be able to use the CLI to view, edit, manipulate, and summarize large data files, successfully extracting biological information and insight from the high-throughput analyses that generated those files.

Justificativa:

Várias áreas da pesquisa biológica mudaram de maneira marcante nos últimos anos com o desenvolvimento das técnicas laboratoriais de larga escala, como microarranjos, sequenciamento massivo de ácidos nucleicos e tecnologias proteômicas. Esses avanços tecnológicos trouxeram não apenas uma mudança importante (e ainda em curso) do ponto de vista filosófico mas também transformaram o modo de trabalho em laboratórios de certas áreas – mais especificamente, o laboratório de computadores. A geração de enormes quantidades de dados que só têm utilidade após processamento computacional extensivo se tornou rotina para muitos grupos de pesquisa nas ciências biológicas. Portanto, tornou-se essencial o treinamento apropriado em conceitos e ferramentas computacionais básicos que podem auxiliar muito na extração de toda a informação que as várias tecnologias de pesquisa biológica em larga escala proporcionam.

Rationale:

Many fields of biological research have changed markedly over the past few years with the rise of high-throughput laboratory techniques such as microarrays, massive nucleic acid sequencing, and proteomic technologies. These technical developments have brought forth not only a significant, and still ongoing, change in philosophical outlook, but have also transformed how work in certain fields is performed in the lab –more specifically, the computer lab. Generation of huge data files that are only useful after extensive computational processing became a frequent task in many biological research groups. Proper training in basic computational concepts and tools that can greatly aid in such endeavors have thus become essential in order to extract all the information that many modern large-scale techniques of biological research can provide.

Conteúdo:

• Introdução a computadores e a família Unix de sistemas operacionais. • Acesso à shell (Bash), local ou remotamente, e bases de Bash. • Acesso a ajuda com man, info, apropos, e sítios de busca na Internet. • Navegação da árvore de diretórios; encontrar e executar programas; navegar e entender o sistema (memória, espaço em disco etc.). • Estrutura do sistema; tipos de arquivos; modelo de permissões; modificando acesso a arquivos (dono, grupo, permissões). • Fluxos padrão e redireção; Piping. • Encontrar e manipular arquivos e diretórios (criar, deletar, mover, copiar, renomear, adicionar dados, concatenar etc.). • Descrever e sumarizar conteúdo de arquivos (wc, file); entrar dados remotos no sistema (wget, scp, ftp). • Explorar e extrair partes de arquivos. • Comparar, ordenar e editar arquivos. • Comprimir e descomprimir dados (tar, gz, zip etc.). • Bases de expressões regulares. • Compilação de programas. • Automação da interface de linha de comando Bash.

Content:

• Introduction to computers and the Unix family of operating systems. • Accessing the shell (Bash), locally or remotely, and Bash basics. • Getting help with man, info, apropos, and Internet search engines. • Moving around the directory tree; finding and executing programs; navigating/understanding the system (memory, disk space etc.). • System structure; file types; user and group permission model; Changing file access (owner, group, permissions). • Standard streams and redirection; piping. • Finding and manipulating files and directories (create, delete, move, copy, rename, append, concatenate etc.). • Describing and summarizing file content (wc, file); getting data into the system (wget, scp, ftp). • Creating, exploring, and sub-setting files. • Comparing, sorting, and editing files. • Compressing and decompressing data (tar, gz, zip etc.). • Basics of regular expressions. • Compiling third-party programs. • Automating the CLI with basic Bash scripting.

Forma de Avaliação:

O conceito final será a média ponderada de duas provas (peso dois cada), questionários em classe (peso um) e atividades práticas (peso 3). O conceito mínimo par

Type of Assessment:

Final grade will be calculated as the weighted average of midterm exam (weight 2), final exam (weight 2), in-class quizzes (weight 1), and practical exercises

Observação:

A disciplina será ministrada completamente em inglês. As provas e outras avaliações podem ser respondidas pelos estudantes em inglês ou em português, à escolha de cada um. A estrutura da disciplina consiste de aulas téorico-práticas, de modo a tornar o conteúdo mais voltado à prática. Para refletir mais o cotidiano da pesquisa, os formatos mais comuns de arquivos empregados em bioinformática serão utilizados e explicados em tantos exemplos práticos quanto possível. A disciplina toda, incluindo provas, é ministrada em um laboratório de computadores (exceto em circunstâncias excepcionais como pandemias). O uso do ambiente de linha de comando em sistemas tipo Unix (como Mas OS e sistemas baseados em Linux) será explorado intensamente, de modo a dar aos estudantes os conhecimentos necessários para rodar a maioria das ferramentas bioinformáticas e analisar com eficiência seus resultados.

Notes/Remarks:

The course will be taught completely in English. Test and other assessment may be answered in English or Portuguese, whichever each student prefers. The course is structured in short lectures intermingled with class activity sessions, in order to make the course as practice-oriented as possible. In order to better reflect everyday research practice, the most widespread file formats used in the field will also be introduced and used in as many practical examples as possible. The whole course, including exams, takes place in a computer lab (except in exceptional circumstances such as pandemics). The use of the command-line environment of Unix-like operating systems (such as Mac OS X and Linux-based systems) will be intensively explored, in order to give students all the working knowledge necessary to run most bioinformatics tools and efficiently analyze their output.

Bibliografia:

“The Linux Command Line, a Complete Introduction”, de William E. Shotts Jr. (2013), http://linuxcommand.org/ “Ubuntu Pocket Guide and Reference”, de Keir Thomas (2009), capítulo 5, http://ubuntupocketguide.com/ “Introduction to the Command Line”, da The Free Software Foundation (2013), http://write.flossmanuals.net/command-line/introduction/ “Bash Guide for Beginners”, de Machtelt Garrels (2008), http://www.tldp.org/guides.html "Bash Reference Manual", de Chet Ramey & Brian Fox (2016), https://www.gnu.org/software/bash/manual/

Bibliography:

“The Linux Command Line, a Complete Introduction”, de William E. Shotts Jr. (2013), http://linuxcommand.org/ “Ubuntu Pocket Guide and Reference”, de Keir Thomas (2009), capítulo 5, http://ubuntupocketguide.com/ “Introduction to the Command Line”, da The Free Software Foundation (2013), http://write.flossmanuals.net/command-line/introduction/ “Bash Guide for Beginners”, de Machtelt Garrels (2008), http://www.tldp.org/guides.html "Bash Reference Manual", de Chet Ramey & Brian Fox (2016), https://www.gnu.org/software/bash/manual/

Idiomas ministrados:

Inglês

Languages taught:

English

Tipo de oferecimento da disciplina:

Presencial

Class type:

Presencial