====== Oficina de Linha de Comando ====== (oficina interna da Coding Rights para [[knowledgesharing|compartilhamento de conhecimentos]]) ===== Slides ===== * Em PDF: {{clit.pdf}} {{ :oficinas:slides_clit-0.png?direct&600 |}} {{ :oficinas:slides_clit-1.png?direct&600 |}} {{ :oficinas:slides_clit-2.png?direct&600 |}} {{ :oficinas:slides_clit-3.png?direct&600 |}} {{ :oficinas:slides_clit-4.png?direct&600 |}} {{ :oficinas:slides_clit-5.png?direct&600 |}} {{ :oficinas:slides_clit-6.png?direct&600 |}} {{ :oficinas:slides_clit-7.png?direct&600 |}} {{ :oficinas:slides_clit-8.png?direct&600 |}} {{ :oficinas:slides_clit-9.png?direct&600 |}} {{ :oficinas:slides_clit-10.png?direct&600 |}} {{ :oficinas:slides_clit-11.png?direct&600 |}} {{ :oficinas:slides_clit-12.png?direct&600 |}} {{ :oficinas:slides_clit-13.png?direct&600 |}} {{ :oficinas:slides_clit-14.png?direct&600 |}} {{ :oficinas:slides_clit-15.png?direct&600 |}} {{ :oficinas:slides_clit-16.png?direct&600 |}} {{ :oficinas:slides_clit-17.png?direct&600 |}} {{ :oficinas:slides_clit-18.png?direct&600 |}} {{ :oficinas:slides_clit-19.png?direct&600 |}} {{ :oficinas:slides_clit-20.png?direct&600 |}} {{ :oficinas:slides_clit-21.png?direct&600 |}} {{ :oficinas:slides_clit-22.png?direct&600 |}} {{ :oficinas:slides_clit-23.png?direct&600 |}} {{ :oficinas:slides_clit-24.png?direct&600 |}} {{ :oficinas:slides_clit-25.png?direct&600 |}} {{ :oficinas:slides_clit-26.png?direct&600 |}} ===== Notas de esboço da oficina ===== * REPL * *Tab completion* * Outras shells * sh * dash * fish * zsh * Socorro * ''%%Ctrl+C%%'', ''%%Ctrl+D%%'', ''%%q%%'', ''%%:q%%'' * ''%%-h | --help%%'' * ''%%man%%'' * @TODO@: online man viewer * apropos * Buscadores, Stack Overflow / Super User * Andando por aí * ''%%ls%%'' * ''%%cat%%'' * ''%%less%%'' * ''%%head e tail%%'' * ''%%file%%'' * Variáveis * ''%%echo sou $USER, moro em $HOME e rodo $SHELL%%'' * ''%%env%%'' * ''%%$PATH%%'' / ''%%which%%'' * Strings e quoting * Scripts * Criando um script * ''%%$EDITOR script.sh%%'' * Executando o script * ''%%chmod +x script.sh%%'' * Comentários * Hashbangs ''%%#!%%'' * * Redirecionamento; ''%%stdin%%'', ''%%stdout%%'' e ''%%stderr%%''; //piping// * Sistema * ''%%id%%'' * Permissões (''%%chmod%%'', ''%%chown%%'', ''%%chgrp%%'') * ''%%sudo%%'' * Processos * background / foreground * ''%%ps%%'' e ''%%kill%%'' * ''%%xkill%%'' * ''%%lsof%%'' * Sistema de arquivos * Expansão (''%%*%%'', ''%%?%%'', ''%%{,}%%''...) * Diretórios Debian / Mac OS * ''%%find%%'' * ''%%locate%%'' * ''%%mkdir%%'' * ''%%mv%%'' * ''%%rm%%'', ''%%rm -rf%%'' * Abrindo arquivos (gnome-open) * @TODO@: como faz no mac? * Dotfiles * ''%%.bash_history%%'' * ''%%.bashrc%%'' * Gerenciamento de pacotes * ''%%apt-get%%'', ''%%aptitude%%'' * Pacotes, dependências e repositórios * Grafo de dependência de alguma distribuição * Loop e controle * ''%%if / else%%'' * ''%%for%%'' * Audiovisual * ''%%avconv%%'' * ImageMagick: ''%%convert%%'' e ''%%mogrify%%'' * ''%%youtube-dl%%'' * * for loop: conversão/download em massa * ''%%for f in *.svg; do ^Cnvert "$f" "$(basename "$f" .svg).png"; done%%'' * ''%%for url in $(cat urls.txt); do youtube-dl -c -f 18 "$url"; done%%'' * Rede * ''%%ifconfig%%'' * ''%%netstat%%'' * ''%%nmap%%'' * ''%%ping%%'' * ''%%nslookup%%'' * ''%%whois%%'' * ''%%tcpdump%%'' * ''%%traceroute%%'' * SSH / SFTP * Windows: * PuTTY para SSH, FileZilla para SFTP * GNU/Linux: * ''%%ssh%%'', ''%%scp%%'' * ''%%ssh%%'': GNU/Linux e Mac OS * Montar no sistema * Bonus: ''%%rsync%%'', ''%%bitpocket%%'' * Web * ''%%wget%%'' / ''%%curl%%'' * ''%%links%%'' * ''%%httrack%%'' * Segurança * ''%%gpg2%%'' * ''%%srm%%'' / secure-delete: remoção bit-a-bit de arquivos * Texto * ''%%grep%%'' * ''%%pdftotext%%'' * ''%%catdoc%%'' * ''%%diff%%'' * ''%%patch%%'' * ''%%dwdiff%%'' * ''%%aha%%'' * ''%%sed%%'' * ''%%pandoc%%'' * Terminal * Outros aplicativos de terminal * Terminal2.app * @TODO@: buscar * ''%%screen%%'' / ''%%tmux%%'' ''%%history | awk 'BEGIN {FS="[ \t]+|\\|"} {print $3}' | sort | uniq -c | sort -nr%%'' https:%%//%%www.commandlinefu.com/commands/browse http:%%//%%en.wikipedia.org/wiki/List_of_Unix_utilities taskwarrior / timewarrior * Fun * figlet * cmatrix * sl * telnet towel.blinkenlights.nl ==== Links ==== * [[http://aurelio.net/shell/canivete/|Canivete Suíço do Shell (Bash)]] * [[http://matt.might.net/articles/sculpting-text/|Sculpting text with regex, grep, sed, awk, emacs and vim]] * [[http://matt.might.net/articles/basic-unix/|Survival guide for Unix newbies]] * [[http://matt.might.net/articles/best-tools-for-using-and-learning-linux-and-unix/|Tips, tricks and tools for Linux/Unix]] * [[http://matt.might.net/articles/settling-into-unix/|Settling into Unix]] * [[http://matt.might.net/articles/bash-by-example/|Shell programming with bash: by example, by counter-example]]