1 00:00:07,987 --> 00:00:09,619 Você está logado dentro do terminal 2 00:00:09,619 --> 00:00:11,291 e, de repente, tem a necessidade 3 00:00:11,291 --> 00:00:14,459 de fazer alterações nos arquivos de texto. 4 00:00:15,533 --> 00:00:17,503 Todas as vezes que precisar fazer isso, 5 00:00:17,503 --> 00:00:22,288 a gente tem a necessidade de utilizar um editor de texto. 6 00:00:22,288 --> 00:00:24,500 O Linux possui diversos editores de texto, 7 00:00:24,500 --> 00:00:28,794 entre eles nós temos o VIM, o Emacs, o NANO 8 00:00:28,794 --> 00:00:33,728 e uma série de outros que você pode utilizar tanto no terminal Shell 9 00:00:33,728 --> 00:00:35,925 como através da interface gráfica. 10 00:00:35,925 --> 00:00:41,219 Eu vou mostrar para vocês hoje o editor de texto VIM, 11 00:00:41,219 --> 00:00:43,016 um dos editores mais utilizados 12 00:00:43,016 --> 00:00:46,939 dentro das operações de edição de arquivos de configuração, 13 00:00:46,939 --> 00:00:49,813 criação de programas, criação de scripts 14 00:00:49,813 --> 00:00:51,657 em ambientes Linux. 15 00:00:52,461 --> 00:00:54,120 O que é o VIM? 16 00:00:54,120 --> 00:00:58,404 O VIM é um dos maiores editores de textos existente hoje no Linux. 17 00:00:58,404 --> 00:01:02,016 Ele tem o poder de identificar diretamente 18 00:01:02,016 --> 00:01:05,064 o tipo de arquivo através da sua extensão. 19 00:01:05,064 --> 00:01:08,801 Ele permite você ter agilidade, velocidade 20 00:01:08,801 --> 00:01:11,118 e conseguir desenvolver programas e scripts 21 00:01:11,118 --> 00:01:15,108 e alterar conteúdo de arquivos de forma muito fácil e rápida. 22 00:01:16,007 --> 00:01:17,765 Ele é um dos editores mais requeridos 23 00:01:17,765 --> 00:01:20,446 dentre as certificações internacionais de Linux, 24 00:01:20,446 --> 00:01:23,227 e, também, ele é o editor que permite 25 00:01:23,227 --> 00:01:28,027 você criar diversas configurações personalizadas 26 00:01:28,027 --> 00:01:31,424 na hora de fazer o uso e operar o VIM. 27 00:01:31,424 --> 00:01:32,455 Imagine o seguinte: 28 00:01:32,455 --> 00:01:36,551 você está logado dentro do sistema e precisa alterar um arquivo. 29 00:01:36,551 --> 00:01:39,208 Nós não temos a interface gráfica dentro do Linux, 30 00:01:39,208 --> 00:01:41,523 nós não temos como clicar em um mouse 31 00:01:41,523 --> 00:01:44,763 e abrir um arquivo e editá-lo, por exemplo, 32 00:01:44,763 --> 00:01:46,532 num bloco de notas ou no Word. 33 00:01:46,532 --> 00:01:49,379 O que você tem é a necessidade de usar um editor 34 00:01:49,379 --> 00:01:51,439 que funcione no ambiente Shell. 35 00:01:51,439 --> 00:01:55,114 E o VIM, certamente, vai ser uma das melhores escolhas 36 00:01:55,114 --> 00:01:56,130 que você vai fazer. 37 00:01:57,804 --> 00:02:02,455 Existem dois tipos básicos de uso do VIM: 38 00:02:02,455 --> 00:02:07,417 podemos utilizar o VIM, que é o VI, apenas, 39 00:02:07,417 --> 00:02:08,848 que é o VI puro, 40 00:02:08,848 --> 00:02:12,765 ou você pode utilizar o VIM utilizando uma máscara melhorada, 41 00:02:12,765 --> 00:02:15,710 que é o VIM, 42 00:02:15,710 --> 00:02:20,814 que significa "VI melhorado", do português, ou "VI Improved". 43 00:02:22,674 --> 00:02:28,414 Para a gente poder entender um pouco mais do VI ou VIM, 44 00:02:28,414 --> 00:02:31,628 nós vamos usá-lo via linha de comando. 45 00:02:31,628 --> 00:02:32,752 Aqui no terminal, 46 00:02:32,752 --> 00:02:35,897 Eu vou executar o comando "vi" e vou dar um enter. 47 00:02:37,450 --> 00:02:39,533 Por padrão, quando executo o comando "vi", 48 00:02:39,533 --> 00:02:43,661 ele traz para mim um arquivo sem nenhum tipo de informação, 49 00:02:43,661 --> 00:02:45,114 sem nenhum nome. 50 00:02:45,114 --> 00:02:47,647 Aqui, nós vemos a configuração do VI, 51 00:02:47,647 --> 00:02:50,567 ele traz até mesmo o nome "VI Improved", 52 00:02:50,567 --> 00:02:54,785 mas a máscara melhorada ainda não está aplicada no VI padrão. 53 00:02:54,785 --> 00:02:57,739 O VI padrão do Debian é chamado de "VI Tiny", 54 00:02:57,739 --> 00:03:01,093 significa que alguns comandos não vão funcionar 55 00:03:01,093 --> 00:03:03,899 como funcionam nos editores de texto comuns. 56 00:03:03,899 --> 00:03:05,141 Exemplo: 57 00:03:05,141 --> 00:03:07,395 se você quiser apagar o conteúdo de um arquivo, 58 00:03:07,395 --> 00:03:09,385 você, geralmente, pressiona backspace. 59 00:03:09,385 --> 00:03:12,792 O backspace não funciona aqui, dentro do VIM. 60 00:03:12,792 --> 00:03:16,193 Se você quiser descer nas linhas de um arquivo, 61 00:03:16,193 --> 00:03:18,876 você usa, geralmente, seta para baixo e seta para cima. 62 00:03:18,876 --> 00:03:23,442 A seta para baixo e a seta para cima não funcionam dentro do VI Tiny. 63 00:03:23,442 --> 00:03:26,518 Para que esses comandos funcionem dentro do VIM, 64 00:03:26,518 --> 00:03:31,351 você precisa instalar a máscara chamada "Environment", 65 00:03:31,351 --> 00:03:33,939 que, aí, você traz as melhorias para o VIM. 66 00:03:33,939 --> 00:03:36,343 Vamos aprender, então, a utilizar o VI Tiny, 67 00:03:36,343 --> 00:03:37,324 que é o VI Puro, 68 00:03:37,324 --> 00:03:42,061 o VIM padrão do Debian e da maioria das distribuições Linux. 69 00:03:42,061 --> 00:03:45,858 Aqui dentro do VIM, eu tenho algumas informações importantes. 70 00:03:45,858 --> 00:03:48,288 Todas as vezes que nós entramos no VIM, 71 00:03:48,288 --> 00:03:51,900 ele, por padrão, usa o "modo comando". 72 00:03:51,900 --> 00:03:55,698 O VIM tem dois módulos de operações principais: 73 00:03:55,698 --> 00:03:57,069 um é o "modo comando", 74 00:03:57,069 --> 00:04:01,797 que pode ser acionado pela tecla ESC do seu teclado, 75 00:04:01,797 --> 00:04:03,697 e o outro é o "modo de inserção", 76 00:04:03,697 --> 00:04:10,433 que podem ser acionados pelas teclas I, Insert, A ou O. 77 00:04:11,104 --> 00:04:12,377 Falaremos disso depois. 78 00:04:13,179 --> 00:04:16,310 Aqui, eu já entrei no modo comando. 79 00:04:16,310 --> 00:04:18,360 Isso significa que eu posso imputar 80 00:04:18,360 --> 00:04:21,340 uma série de comandos para esse editor. 81 00:04:21,340 --> 00:04:23,082 E quais seriam esses comandos? 82 00:04:23,082 --> 00:04:26,198 Por exemplo, eu posso salvar um arquivo 83 00:04:26,198 --> 00:04:28,149 e o VI entende que é um comando. 84 00:04:28,149 --> 00:04:30,682 Eu posso substituir um caractere aqui dentro 85 00:04:30,682 --> 00:04:32,481 e ele vai entender que é um comando. 86 00:04:32,481 --> 00:04:35,225 Eu posso, por exemplo, sair do próprio VI 87 00:04:35,225 --> 00:04:36,917 e ele vai entender que é um comando. 88 00:04:36,917 --> 00:04:39,780 Eu posso copiar uma linha, deletar uma linha inteira, 89 00:04:39,780 --> 00:04:42,484 copiar uma palavra, deletar uma palavra, 90 00:04:42,484 --> 00:04:46,652 tudo isso ele entende que são comandos para o VI. 91 00:04:46,652 --> 00:04:49,575 Então, se eu não estiver no modo de inserção, 92 00:04:49,575 --> 00:04:51,827 que é o modo o qual eu imputo os dados, 93 00:04:51,827 --> 00:04:54,254 eu insiro dados dentro do arquivo, 94 00:04:54,254 --> 00:04:56,091 eu posso estar no modo de comando. 95 00:04:56,091 --> 00:04:57,683 Existem outros modos do VIM? 96 00:04:57,683 --> 00:04:58,396 Existem. 97 00:04:58,396 --> 00:05:00,886 Mas esses são os modos principais. 98 00:05:00,886 --> 00:05:04,703 Uma vez aqui dentro, eu tenho algumas informações importantes. 99 00:05:04,703 --> 00:05:05,599 Ele diz para mim: 100 00:05:05,599 --> 00:05:10,149 "pressione :q + enter para eu sair desse arquivo". 101 00:05:10,149 --> 00:05:15,447 ":help" e o tipo de informação que eu quero para procurar ajuda. 102 00:05:15,447 --> 00:05:16,748 Eu tenho aqui, por exemplo, 103 00:05:16,748 --> 00:05:18,989 para não citar as informações por padrão. 104 00:05:18,989 --> 00:05:23,889 Então, todas as vezes que eu quiser usar as opções de comando do VIM, 105 00:05:23,889 --> 00:05:25,887 eu tenho que usar os dois pontos. 106 00:05:25,887 --> 00:05:30,863 Então, a ordem é tecla ESC, no canto superior esquerdo do seu teclado, 107 00:05:30,863 --> 00:05:31,826 dois pontos, 108 00:05:33,102 --> 00:05:35,670 perceba que ele escreveu os dois pontos aqui embaixo, 109 00:05:35,670 --> 00:05:37,142 e o comando que eu quero. 110 00:05:37,142 --> 00:05:39,476 Vamos imaginar que eu queira sair desse arquivo. 111 00:05:39,476 --> 00:05:40,849 "Q" de quit. 112 00:05:40,849 --> 00:05:43,358 Pronto, eu voltei para o terminal. 113 00:05:43,358 --> 00:05:46,169 Um detalhe importante é que toda vez que eu abro um arquivo, 114 00:05:46,169 --> 00:05:49,581 simplesmente passando o VI, ele não tem nome. 115 00:05:49,581 --> 00:05:53,318 Ele é um arquivo totalmente inexistente. 116 00:05:53,318 --> 00:05:56,688 Existe um buffer. O que é um buffer? 117 00:05:56,688 --> 00:06:00,147 Basicamente é um ambiente que o VI vai armazenar 118 00:06:00,147 --> 00:06:05,084 tudo aquilo que eu fizer em memória dentro do ambiente, 119 00:06:05,084 --> 00:06:07,726 mas ele não vai gravar nada no disco. 120 00:06:07,726 --> 00:06:10,157 Depois, ele vai despejar tudo isso 121 00:06:10,157 --> 00:06:14,101 dentro do seu HD, caso você salve esse arquivo. 122 00:06:14,101 --> 00:06:16,785 Ok, vamos voltar aqui para o editor. 123 00:06:17,651 --> 00:06:18,823 "vi" e enter. 124 00:06:20,075 --> 00:06:22,349 Perceba que se eu der um I de inserir, 125 00:06:22,349 --> 00:06:23,645 ele não fez nada. 126 00:06:23,645 --> 00:06:24,550 Por quê? 127 00:06:24,550 --> 00:06:27,714 Porque eu estou usando o VI Tiny, o VI padrão. 128 00:06:27,714 --> 00:06:31,557 Esse VI não é muito amigável e vocês vão ter, certamente, 129 00:06:31,557 --> 00:06:34,379 grande dificuldade para poder operá-lo. 130 00:06:34,379 --> 00:06:35,733 Então, o que é recomendado? 131 00:06:35,733 --> 00:06:38,378 Que a gente instale o VIM, 132 00:06:38,378 --> 00:06:41,807 que traz uma máscara chamada "Runtime", 133 00:06:41,807 --> 00:06:44,043 que, automaticamente, incompatibiliza o VIM 134 00:06:44,043 --> 00:06:46,116 com vários outros editores. 135 00:06:46,116 --> 00:06:49,696 Então, passará a funcionar seta para baixo para descer no arquivo, 136 00:06:49,696 --> 00:06:50,921 seta para cima para subir, 137 00:06:50,921 --> 00:06:52,911 seta para a esquerda para ir à esquerda, 138 00:06:52,911 --> 00:06:54,631 seta para direita para ir à direita, 139 00:06:54,631 --> 00:06:56,014 backspace para apagar 140 00:06:56,014 --> 00:06:59,452 e uma série de outras teclas funcionarão como funcionam, 141 00:06:59,452 --> 00:07:02,489 por exemplo, no Word, que é outro editor de arquivos, 142 00:07:02,489 --> 00:07:05,154 no bloco de notas e assim por diante. 143 00:07:05,154 --> 00:07:08,013 Eu vou sair de dentro do editor agora, 144 00:07:08,013 --> 00:07:11,016 vou instalar essa máscara para que a gente possa ter 145 00:07:11,016 --> 00:07:15,958 um pouco mais de flexibilidade nas operações dentro do VIM. 146 00:07:15,958 --> 00:07:18,068 "ESC :q" 147 00:07:19,123 --> 00:07:20,590 E vamos instalar. 148 00:07:20,590 --> 00:07:23,902 "apt install vim" 149 00:07:26,111 --> 00:07:29,461 Por padrão, todas as vezes, agora, que eu chamar o comando VI, 150 00:07:29,461 --> 00:07:33,939 na verdade, ele vai ser um atalho para o comando VIM. 151 00:07:34,600 --> 00:07:36,555 Quando eu dou um "vi" e um enter, 152 00:07:37,228 --> 00:07:40,292 na verdade, ele chamou o comando "VIM". 153 00:07:40,292 --> 00:07:42,668 Você pode olhar aqui e falar: "mas não mudou nada." 154 00:07:42,668 --> 00:07:44,291 Eu vou te provar que mudou. 155 00:07:44,291 --> 00:07:46,811 Quando nós pressionarmos a tecla I de inserir, agora, 156 00:07:46,811 --> 00:07:49,374 ele escreveu lá embaixo: "Inserção". 157 00:07:49,374 --> 00:07:51,597 Quando não tínhamos essa máscara instalada, 158 00:07:51,597 --> 00:07:54,225 nós pressionamos I e não tinha acontecido nada, 159 00:07:54,225 --> 00:07:56,689 mas ele tinha entrado no modo de inserção. 160 00:07:56,689 --> 00:07:59,198 A diferença agora é que esse VI é mais amigável, 161 00:07:59,198 --> 00:08:01,980 esse VIM é mais friendly. 162 00:08:01,980 --> 00:08:04,866 Ele é muito mais fácil de usar. 163 00:08:04,866 --> 00:08:07,135 Vamos imputar aqui algumas informações. 164 00:08:07,135 --> 00:08:10,038 Todas as vezes que eu pressiono I, ele entra no modo inserção. 165 00:08:10,038 --> 00:08:12,774 Pode perceber que, aqui embaixo, escreveu "Inserção" 166 00:08:12,774 --> 00:08:15,657 e eu posso digitar qualquer coisa aqui dentro. 167 00:08:15,657 --> 00:08:17,105 O Linux 168 00:08:17,913 --> 00:08:22,841 é um sistema open source. 169 00:08:24,496 --> 00:08:26,781 A GPL possui 170 00:08:27,529 --> 00:08:31,554 4 liberdades principais. 171 00:08:32,928 --> 00:08:35,029 O rato roeu a roupa 172 00:08:36,176 --> 00:08:38,093 do rei de Roma. 173 00:08:38,093 --> 00:08:40,896 Eu posso inserir qualquer informação aqui dentro. 174 00:08:40,896 --> 00:08:43,074 Nesse momento, esse arquivo não tem um nome. 175 00:08:43,074 --> 00:08:46,319 Todas as informações são armazenadas no buffer do VI. 176 00:08:46,319 --> 00:08:48,701 Imagine que você acabou de abrir o bloco de notas 177 00:08:48,701 --> 00:08:52,055 e esse bloco de notas você não salvou ainda com nenhum nome. 178 00:08:52,055 --> 00:08:53,765 É o mesmo critério. 179 00:08:53,765 --> 00:08:56,165 Tudo o que você insere ali não está sendo salvo. 180 00:08:56,165 --> 00:08:59,187 Você tem um arquivo no bloco de notas sem títulos 181 00:08:59,187 --> 00:09:01,897 Para que possa dar um nome àquele arquivo dentro do bloco 182 00:09:01,897 --> 00:09:03,435 de notas do Windows, por exemplo, 183 00:09:03,435 --> 00:09:05,550 você teria que "salvar como". 184 00:09:05,550 --> 00:09:08,647 Esse é o mesmo processo dentro do VI. 185 00:09:08,647 --> 00:09:12,417 Toda vez que eu abro o VI e não informo o nome de um arquivo, 186 00:09:12,417 --> 00:09:16,106 para que eu possa salvar todas as modificações que fiz, 187 00:09:16,106 --> 00:09:18,463 eu preciso "salvar como". 188 00:09:19,124 --> 00:09:21,793 E como eu "salvo como" dentro do VI? 189 00:09:21,793 --> 00:09:22,587 Simples. 190 00:09:22,587 --> 00:09:25,371 Você vai pressionar a tecla ESC. 191 00:09:25,371 --> 00:09:28,833 Automaticamente, nós entramos no modo comando. 192 00:09:28,833 --> 00:09:31,049 ":w" 193 00:09:31,049 --> 00:09:33,772 W é o comando para gravar. 194 00:09:33,772 --> 00:09:35,522 Todas as vezes que você quiser gravar 195 00:09:35,522 --> 00:09:37,505 uma modificação dentro do VI, 196 00:09:37,505 --> 00:09:40,553 o comando que você vai dar é W, de "write". 197 00:09:40,553 --> 00:09:45,149 E você vai informar para o VI onde você quer salvar esse arquivo 198 00:09:45,149 --> 00:09:47,519 e qual o nome que você quer dar para ele. 199 00:09:47,519 --> 00:09:50,555 Então, eu quero salvar esse arquivo dentro do diretório 200 00:09:50,555 --> 00:09:54,287 "/tmp/". 201 00:09:54,776 --> 00:09:59,954 Vou dar o nome de "teste.txt". 202 00:09:59,954 --> 00:10:01,716 E vou dar o enter. 203 00:10:01,716 --> 00:10:02,511 Pronto. 204 00:10:02,511 --> 00:10:05,363 Perceba que ele escreveu as informações aqui em baixo 205 00:10:05,363 --> 00:10:08,806 O novo arquivo "/tmp/teste.txt" 206 00:10:08,806 --> 00:10:13,344 possui 3 linhas e 110 bytes gravados. 207 00:10:13,344 --> 00:10:14,656 Maravilha! 208 00:10:14,656 --> 00:10:16,487 Abri o VIM, entrei no modo sessão 209 00:10:16,487 --> 00:10:21,845 coloquei as informações lá dentro e salvei como "/tmp/teste.txt" 210 00:10:22,477 --> 00:10:25,303 Feito tudo isso, eu vou sair desse arquivo. 211 00:10:25,303 --> 00:10:28,730 ESC, ":q" de "quit". 212 00:10:29,707 --> 00:10:31,209 Voltamos para o terminal. 213 00:10:31,209 --> 00:10:37,080 Ce nós dermos o comando "cat/tmp/teste.txt", 214 00:10:37,080 --> 00:10:41,673 lá está todo o conteúdo que havia inserido dentro do arquivo no VIM. 215 00:10:41,673 --> 00:10:44,205 Agora, eu quero editar esse arquivo novamente. 216 00:10:44,205 --> 00:10:45,124 O que eu faço? 217 00:10:45,124 --> 00:10:50,531 Agora sim, eu posso dar um "vi/tmp/teste.txt" 218 00:10:50,531 --> 00:10:53,718 e, automaticamente, o conteúdo do arquivo foi aberto. 219 00:10:53,718 --> 00:10:56,714 Esse conteúdo foi aberto no modo de comando 220 00:10:56,714 --> 00:10:59,757 e significa que, para eu poder inserir novas informações, 221 00:10:59,757 --> 00:11:03,361 eu tenho três ou quatro opções possíveis. 222 00:11:03,361 --> 00:11:06,664 Eu posso pressionar a letra I de inserção. 223 00:11:06,664 --> 00:11:09,287 Perceba que ele escreveu inserção aqui embaixo 224 00:11:09,287 --> 00:11:12,904 e o cursor permaneceu parado no lugar dele. 225 00:11:12,904 --> 00:11:15,456 Vou a pressionar ESC e ESC. 226 00:11:15,456 --> 00:11:18,509 Posso pressionar a tecla A. 227 00:11:19,442 --> 00:11:24,182 Ele entrou no modo de inserção, mas o cursor avançou um caractere. 228 00:11:24,182 --> 00:11:28,920 Vou pressionar ESC e posso pressionar a letra O. 229 00:11:28,920 --> 00:11:30,397 Ele entrou no modo de inserção 230 00:11:30,397 --> 00:11:32,777 e o cursor inseriu uma nova linha em branco. 231 00:11:32,777 --> 00:11:36,027 Esses são os três modos que eu consigo entrar 232 00:11:36,027 --> 00:11:41,023 nesse modo de inserção utilizando A, I de Insert 233 00:11:41,023 --> 00:11:43,038 ou O de dentro do VIM. 234 00:11:44,118 --> 00:11:48,242 Agora, existem também outros modos de operação no VIM, 235 00:11:48,242 --> 00:11:50,902 como o modo de visualização. 236 00:11:50,902 --> 00:11:52,788 Para eu entrar no modo de visualização, 237 00:11:52,788 --> 00:11:54,645 eu vou apertar a letra V. 238 00:11:54,645 --> 00:11:56,460 Ele escreve "visual". 239 00:11:56,460 --> 00:11:58,886 O modo de visualização permite com que, por exemplo, 240 00:11:58,886 --> 00:12:01,038 eu selecione linhas. 241 00:12:01,038 --> 00:12:03,577 Eu consigo selecionar, por exemplo, essas três linhas 242 00:12:03,577 --> 00:12:05,531 e, uma vez selecionadas essas três linhas, 243 00:12:05,531 --> 00:12:07,361 eu posso executar qualquer comando. 244 00:12:07,361 --> 00:12:10,381 Eu posso deletar essas três linhas de uma vez. 245 00:12:10,381 --> 00:12:12,880 Eu posso copiar essas três linhas de uma vez. 246 00:12:12,880 --> 00:12:17,151 Então, vou pressionar a tecla ESC e a letra V de visualização. 247 00:12:17,895 --> 00:12:20,785 Imagine que eu queira copiar todo o conteúdo da linha 1. 248 00:12:20,785 --> 00:12:25,339 Eu vou selecionar com a seta para frente e pressiono a tecla Y. 249 00:12:26,033 --> 00:12:28,379 Pronto, copiou a linha. 250 00:12:28,379 --> 00:12:31,485 E para eu colar, eu posso ir no lugar que eu quero, 251 00:12:31,485 --> 00:12:33,100 no final do arquivo, 252 00:12:33,100 --> 00:12:35,842 apertar a tecla ESC para habilitar o modo comando 253 00:12:35,842 --> 00:12:37,940 e pressionar a letra P. 254 00:12:38,566 --> 00:12:43,461 Ele copiou a linha número 1 e colou a linha aqui embaixo. 255 00:12:43,461 --> 00:12:46,405 Isso no modo de visualização do VI. 256 00:12:47,515 --> 00:12:50,985 Nós também podemos alternar entre esses três modos, 257 00:12:50,985 --> 00:12:53,170 à medida que seja necessário. 258 00:12:53,170 --> 00:12:56,757 Por exemplo, eu posso dar I, entrei no modo de inserção, 259 00:12:56,757 --> 00:12:59,107 dar ESC, entrei no modo de comando 260 00:12:59,107 --> 00:13:01,080 e V para entrar no modo de visual. 261 00:13:01,080 --> 00:13:02,339 Detalhe importante: 262 00:13:02,339 --> 00:13:05,731 se você está no modo comando e aperta a letra V, 263 00:13:05,731 --> 00:13:07,718 ele entra no modo visual. 264 00:13:07,718 --> 00:13:10,291 Se você está no modo comando e aperta a letra I, 265 00:13:10,291 --> 00:13:12,079 ele entra no modo de inserção. 266 00:13:12,079 --> 00:13:14,111 A letra A entra no modo de inserção. 267 00:13:14,111 --> 00:13:15,860 A letra O entra no modo de inserção. 268 00:13:15,860 --> 00:13:19,820 Agora, se eu estou no modo de inserção e eu aperta a letra V, 269 00:13:20,514 --> 00:13:22,341 ele vai digitar a letra V. 270 00:13:24,261 --> 00:13:26,693 Se eu apertar a letra I, ele vai digitar a letra I. 271 00:13:26,693 --> 00:13:29,714 Então, a gente precisa entender em qual modo que nós estamos 272 00:13:29,714 --> 00:13:32,251 para saber se eu estou inserindo uma informação 273 00:13:32,251 --> 00:13:34,619 ou se eu estou enviando um comando. 274 00:13:34,619 --> 00:13:38,026 Além disso, eu posso, simplesmente, estar dentro desse arquivo 275 00:13:38,026 --> 00:13:41,153 e, imagine que essas duas linhas novas, 276 00:13:41,153 --> 00:13:43,720 tanto essa linha aqui quanto essa linha, 277 00:13:43,720 --> 00:13:45,954 eu não queira salvar esse conteúdo. 278 00:13:45,954 --> 00:13:47,508 Eu abri o arquivo. 279 00:13:47,508 --> 00:13:49,540 Puts, fiz uma edição errada. 280 00:13:49,540 --> 00:13:52,275 Eu não queria fazer essa alterações. 281 00:13:52,275 --> 00:13:54,540 Eu quero sair desse arquivo sem salvar. 282 00:13:55,303 --> 00:13:56,552 Nós já vimos que o comando 283 00:13:56,552 --> 00:13:58,747 que utilizamos para sair do VI é o Q. 284 00:13:58,747 --> 00:14:02,392 Então, se eu vier aqui, pressionar ESC, ":q" 285 00:14:03,290 --> 00:14:05,776 ele não deixa eu sair. 286 00:14:05,776 --> 00:14:07,698 Por que isso acontece? 287 00:14:07,698 --> 00:14:11,081 Isso acontece porque todas as vezes que você abre o editor VI 288 00:14:11,081 --> 00:14:13,436 e você entra no modo de inserção, 289 00:14:13,436 --> 00:14:18,345 obrigatoriamente, ele entende que você abriu o arquivo, 290 00:14:18,345 --> 00:14:21,257 você entrou no modo de inserção, você inseriu dados 291 00:14:21,257 --> 00:14:23,797 e você não quer salvar, é isso mesmo? 292 00:14:24,573 --> 00:14:28,575 Se a resposta para essa pergunta for: "sim, é isso mesmo", 293 00:14:28,575 --> 00:14:31,724 você precisa forçar o comando dentro do VI. 294 00:14:31,724 --> 00:14:34,372 E o caractere que a gente usa para forçar um comando 295 00:14:34,372 --> 00:14:38,172 dentro do VI é o caractere "!". 296 00:14:38,172 --> 00:14:42,680 Então, eu vou vir aqui no terminal, vou dar um ESC, ":". 297 00:14:42,680 --> 00:14:45,372 O comando que eu quero é "q" para sair 298 00:14:45,372 --> 00:14:48,052 e eu tenho que forçar com "!" 299 00:14:48,052 --> 00:14:51,889 para poder sair desse arquivo sem salvar essas duas linhas. 300 00:14:51,889 --> 00:14:55,079 Detalhe importante: a exclamação não é usada 301 00:14:55,079 --> 00:14:57,311 apenas para sair sem salvar. 302 00:14:57,311 --> 00:15:02,666 Ela é um caractere para forçar qualquer comando dentro do VI. 303 00:15:02,666 --> 00:15:07,538 Então, por exemplo, eu posso querer gravar forçando, "w!". 304 00:15:07,538 --> 00:15:10,939 Eu posso querer sair e salvar forçando. 305 00:15:10,939 --> 00:15:14,265 W para gravar. Q para sair. E "!". 306 00:15:14,265 --> 00:15:18,138 Então, a exclamação simplesmente força a execução de um comando. 307 00:15:18,138 --> 00:15:21,251 Nesse nosso exemplo, eu quero que ele force sair 308 00:15:21,251 --> 00:15:24,822 sem salvar essas duas linhas aqui que nós inserimos. 309 00:15:24,822 --> 00:15:27,868 E aí, eu uso ESC, ":q!" 310 00:15:27,868 --> 00:15:30,214 Pronto, saí do arquivo. 311 00:15:30,214 --> 00:15:32,783 Se eu voltar dentro do arquivo novamente, 312 00:15:32,783 --> 00:15:35,557 percebam que as três ou as duas últimas linhas 313 00:15:35,557 --> 00:15:39,623 que nós havíamos inserido não foram salvas. 314 00:15:39,623 --> 00:15:43,207 Esse é o VI, um dos editores de texto mais utilizados no Linux. 315 00:15:43,207 --> 00:15:46,910 Você viu como abrir, como sair, como entrar no modo comando, 316 00:15:46,910 --> 00:15:48,238 como entrar no modo inserção 317 00:15:48,238 --> 00:15:50,534 e como entrar no modo de visualização. 318 00:15:50,534 --> 00:15:54,451 Entendendo uma vez esses módulos, certamente você, em pouco tempo, 319 00:15:54,451 --> 00:15:59,187 vai passar a dominar o maior editor de textos dos ambientes Linux.