Transcrições
1. Apresentação do curso: Olá e bem-vindo. Meu nome é Max, fundador da codificação com Max e ponto de verificação de dados. E neste curso, vou mostrar-lhe como começar com o terminal. Vamos fazer quase tudo numa máquina remota. Então não se preocupe, vou te mostrar como fazer isso. E você vai aprender coisas básicas como navegar, criar e destruir arquivos e pastas, copiá-los de um lugar para outro. Mas então também vamos aprender como você pode copiar dados de uma máquina para outra, como você pode executar código em uma máquina virtual, bem como executar executáveis. E o objetivo é facilitar a sua vida quando você está desenvolvendo, para
que você nem sempre precise ir com o Finder ou
o Explorador de Arquivos e encontrar todas as suas coisas. Podemos fazer tudo no terminal, o que pode acelerar muito o seu processo de desenvolvimento. E também em alguns casos, você pode realmente não ter uma interface do usuário disponível e você essencialmente tem que trabalhar e navegar com o terminal.
2. Configuração digital de oceano: Olá, é o Max e bem-vindo. Então, nesta seção, vamos aprender algumas habilidades legais sobre apenas algumas coisas básicas de administração Linux. Basicamente o suficiente para nos ajudar a navegar pelo terminal que podemos fazer em nossa própria máquina ou também se entrarmos em outra máquina que talvez esteja na Nuvem, então também podemos usar essas habilidades aqui. Agora nós não vamos fazer um mergulho profundo em todas as coisas de administração Linux porque você pode ir muito fundo lá. Mas em vez disso, vamos apenas olhar para o material que eu achei ser mais útil e mais necessário e são o tipo de coisas que eu usaria em um dia regular a dia, semana a semana ou mês a mês, dependendo, é
claro, o projetos que você está fazendo. Então, a primeira coisa que é claro que vamos precisar fazer é ter algum tipo de plataforma. Podemos praticar essas habilidades agora porque queremos ter certeza de que podemos praticar todas essas habilidades no mesmo lugar. Um bom lugar para ir seria alugar uma pequena máquina virtual online e então podemos praticar tudo lá. E isso será uma máquina Linux. E podemos praticar tudo lá. E assim, sabe, estamos todos praticando no mesmo lugar. Agora, é claro, se você estiver em um Linux ou um Mac, você também pode fazer isso diretamente em seu terminal. No Windows, ele geralmente funcionará, mas existem algumas diferenças entre o Windows, PowerShell versus o terminal Mac ou Linux. Então é melhor que, você sabe, tenhamos um lugar onde podemos praticar tudo isso juntos. Então, um serviço que eu acho muito legal para isso é chamado Digital Ocean. E você pode vê-lo no site aqui na Digital Ocean.com. E eles atualmente também têm um crédito livre onde você pode obter um $100 e crédito gratuito. Você pode usá-lo por 60 dias. E assim você pode apenas tipo de brincar com as coisas e
começar com as coisas sem realmente ter que pagar nada. Agora é provável que eles vão pedir que você coloque algum tipo de informação de
pagamento apenas para que, se você passar o crédito, você vai começar a ser cobrado. Mas vou mostrar-lhe como podemos fazer tudo dentro para ter certeza de que você pode usá-lo que você esteja usando para praticar e você entenda de onde vem o faturamento. Novamente, não é necessário que você use isso, especialmente se você estiver em um Mac ou um Linux, porque você pode fazer o mesmo em sua máquina local, mas é bom e uma boa prática tentar realmente fazer isso em uma máquina remota, porque isso é em alguns casos exatamente o que você vai encontrar no trabalho quando você quiser usar apenas uma máquina virtual para hospedar algo ou você precisa empurrar algo lá que está meio que sendo executado consistentemente, ou alguém tem algo lá ou Que seja. É muito comum usar máquinas virtuais e nuvens. Então, sim, para reivindicar este crédito gratuito, então você pode novamente apenas ir para a comunicação nacional digital e clicar aqui. E isso irá então levá-lo para a página de registro onde você pode se registrar usando bem, eu já estou logado, então ele vai me redirecionar. Mas para você, é claro, ele irá levá-lo para a página de registro no caso de eles terminarem esta promoção. Também incluirei um link na guia de materiais que incluirá um link de afiliado. E isso deve dar-lhe o mesmo US $100 por 60 dias para brincar com apenas no caso de você sabe, eles nunca remover isso da página de registro, você pode, claro, usá-lo. Novamente. Eles provavelmente vão pedir suas informações de cobrança. Você não será cobrado a menos que você, é claro, vá acima de todos esses limites ou decida que deseja continuar usando porque gosta dele. Mas, novamente, isso será apenas para praticar e para alojar o crédito inicial, para começar a brincar com uma máquina virtual na Nuvem. Tudo bem, assim que ele criar suas contas, então você verá este painel aqui, que também é o que você verá aqui para mim, pode ver que estou vinculado a um projeto específico que atualmente é apenas o meu nome. Casey, não tem um projeto atribuído a você por qualquer motivo, você pode, é claro, clicar aqui novo projeto e você pode apenas criar um novo projeto com algumas informações básicas. Então podemos ver aqui projeto de teste. Isto é só para testar e depois para tentar. E podemos criar um projeto. E assim você pode ver aqui, nós temos essas opções para criar um projeto e voltamos para a mesma tela que eu tinha aqui em cima. Então eu só vou usar este aqui porque eu queria deixar este aqui mais tarde. Mas, novamente, é muito fácil apenas criar um projeto. Tudo bem? Então o que vamos usar é que vamos criar algo chamado gotícula. Então vamos em frente e fazer isso. E então podemos atravessar as coisas diferentes. Se você rolar para baixo, você realmente verá que você tem muitas opções diferentes porque o oceano digital realmente permite que você até mesmo goste, você sabe, hospedar sites e bancos de dados e todas essas coisas legais, todas essas coisas na nuvem como Google faz, ele gosta da Amazon, como a Microsoft. Estes são todos esses serviços de nuvem aqui realmente, nós não vamos usar nenhum desses. Nós vamos apenas criar uma máquina virtual, que você pode realmente pensar como um computador que está executando o Linux, provavelmente sentado em algum outro lugar em algum data center em algum lugar. E estamos alugando esse espaço. E não temos uma tela gráfica como temos em nosso laptop conectado a ele. Então é basicamente isso que estamos fazendo aqui. Certo, então vamos clicar aqui e começar com uma gota. E isso vai nos levar para a página de criação de gotículas. Na verdade, vou fechar esta aba aqui porque eu tenho o aberto duas vezes. Então a primeira coisa que vamos fazer é escolher um sistema operacional. Vamos apenas ficar com o padrão 12, que vai ser baseado em Linux. O plano aqui é básico. Agora temos máquinas diferentes que você pode ver aqui têm propriedades diferentes, número
diferente de CPUs e RAM e espaço em disco e não recursos de transferência de trabalho. Vamos usar o mais barato,
que custará 5 dólares por mês. Mas é claro, você sabe, você vai ter algum crédito inicial que é bom para 60 dias. Então isso só se aplicará para mais tarde. Então nós vamos escolher o mais barato aqui porque isso é realmente tudo o que precisamos. Então vamos descer. Não precisamos adicionar mais nada. Podemos escolher qual região queremos criar esta máquina. E eu vou deixar como um padrão. E novamente, para os nossos propósitos aqui, isso realmente não importa. Mas se você quiser criar uma máquina em algum lugar, então é bom tê-lo em um local onde todas as suas outras máquinas estão ou onde seus clientes estão para enviar dados para trás e para
trás perto de onde os dados precisam ir e de onde vem. Porque é mais barato assim. Mas, novamente, para nós, isso realmente não importa. Então nós vamos apenas escolher o padrão,
que aqui vai ser apenas nós Nova York. Vou rolar para baixo. Vamos deixar isto como está. Não vamos selecionar nenhuma opção adicional aqui. Agora, para a autenticação, temos duas opções diferentes. Um deles vai ser uma chave SSH e o outro vai ser senha. Agora as senhas são mais fáceis de configurar porque tudo o que você precisa fazer é digitar uma senha e, em seguida, você pode usar isso também em. Mas vamos realmente usar uma chave SSH porque ele vai tornar o processo de login um pouco mais fácil. E realmente o que a chave SSH
fará é basicamente como uma impressão digital que temos em nossa máquina. E quando queremos nos conectar a ele, ele verifica se ele tem como essa contraparte que ele precisa. E se houver essa confirmação, eu tenho minha chave e a outra versão da minha chave está nesta máquina, e então eles check-out, então eu automaticamente faço login. Então isso é muito bom porque é um pouco mais seguro. Novamente, isso está indo muito longe em uma direção errada, então não vamos nos concentrar muito nisso. Se você estiver em uma empresa, é provável que tudo seja feito com chaves SSH. Então, você sabe, se você precisar deles, então seu departamento de DevOps provavelmente vai ajudá-lo a configurar tudo isso. Mas nós vamos apenas criar um, o nosso também, só para que você saiba que nós já o usamos uma vez antes e entendemos um pouco mais sobre ele. Então você pode ver aqui eu já tenho um criado, mas vamos apenas percorrer o processo de como você criaria 12. Então, podemos clicar aqui em uma nova chave SSH. E é muito bom porque eles realmente têm as instruções exatamente que você precisa para criar uma nova chave SSH e você sabe quais partes você deve colocar aqui. Mas vamos passar pelo processo juntos aqui vemos que isso é específico para Linux e Macs. Ou se, você sabe, você tem OpenSSH no Windows. Mas para o tutorial do Windows, vamos realmente rever isso na próxima lição porque eles vão ser alguns casos em janelas onde ele pode não funcionar e janelas tipo de funciona um pouco diferente. E é por isso que queremos usar uma máquina virtual
na Nuvem para garantir que estamos todos no mesmo ambiente. Tudo bem, mas vamos ver as instruções de configuração do Linux e Mac primeiro aqui. Então primeiro precisamos gerar um par de chaves. E o que vamos fazer é copiar isto. E depois vamos para o nosso terminal. E aqui se colarmos e executarmos isso, eu não vou fazer isso porque eu já tenho todas as coisas criadas. Podemos colar e executar isto. E basicamente vai dizer exatamente o que você tem aqui. Ele vai pedir-lhe para salvá-lo e fornecer um nome para ele. Tudo bem, então vamos começar a criar um desses pares de chaves SSH. Vou clicar em Copiar aqui. E eu vou para o terminal. E então eu vou colar isso aqui e, em seguida, apertar Enter. E agora vai perguntar-me onde quer guardar a chave. Se você apenas pressionar Enter lá, ele deve salvá-lo neste local padrão. Mas você também pode simplesmente copiar aqueles se você quiser. E este será o local do arquivo onde você deseja salvá-lo. Então eu já tenho esse arquivo, então eu vou me certificar de não substituí-lo. E eu vou colocar aqui vai ser na
pasta Usuários do que minha pasta pessoal ou no, neste usuário específico vai estar neste ponto SSH. Falaremos sobre o que o.me mais tarde em uma das lições posteriores. E então teremos o arquivo aqui. Eu vou chamar esse ID RSA, e então eu vou chamá-lo de oceano digital, assim. E então eu vou apertar Enter. Agora, se quisermos, podemos definir uma senha para a final. Não é necessário, mas não podemos. Então eu vou apenas definir uma senha para ele. E, claro, para as pessoas passam frase, e este faz. E assim agora ele irá gerar este arquivo SSH para nós. Então, para ver que ele foi criado, e novamente, nós também aprenderemos esses comandos mais tarde. É meio irônico que tenhamos que usar alguma quantidade. Mas vamos continuar e copiar isso aqui. E então vamos digitar ls menos l. Novamente, aprenderemos o que isso significa mais tarde. Vamos colá-los aqui. Pressione Enter. E agora você pode ver aqui. Temos esses arquivos criados. Então você tem dois arquivos. Um é este e nós realmente temos o mesmo nome de arquivo, mas este tem um ponto Pub por trás dele. Tudo bem, legal. Então vamos em frente e voltar para o Digital Ocean aqui. E você verá que isso é basicamente também o que eles estão dizendo para fazer e nas instruções de configuração aqui. Tudo bem, então agora o que ele está nos pedindo para fazer é novamente aqui nós temos dois arquivos, este e o outro com o Pub ponto ao lado dele. Então este aqui vai ser a nossa chave pública. E então o que ele nos pede para fazer é copiar o conteúdo da chave pública e colocá-los aqui. Tudo bem, então vamos fazer isso. Você pode tomar este comando. Este comando não vai funcionar exatamente para mim porque eu mudei o nome do arquivo. Mas eu vou pegar a primeira parte. E novamente, nós também vamos aprender o que todas essas coisas significam mais tarde jogado este curso aqui. Então vamos trabalhar com ele agora e fazer uma revisão mais tarde, quando nos aprofundarmos nisso. Então eu só vou ter este arquivo aqui, certificando-se de que eu uso aquele com o ponto Pub no final caso você não alterou o nome, então este comando padrão aqui deve funcionar bem para você. Tudo bem, eu vou apertar Enter e ele vai imprimir isso. Eu vou pegar isso, eu sou plebeu, vou copiar todos nós. E eu vou postar isso aqui. E então eu vou dar um nome para isso. Isso vai ser o máximo de teste do administrador do Linux. E então eu vou adicionar a chave SSH aqui. E agora, porque tenho dois, vou ficar com o novo que criei. Então esse vai ser o que está disponível aqui. Tudo bem, então agora eu vou apenas perguntar
quantos nós queremos criar para apenas ir para criar um. Se quisermos dar a ele um nome específico que podemos fazer isso aqui, caso contrário, ele só vai gerar um para nós. E se você quiser ter qualquer etiqueta, novamente, neste momento, eu realmente não me importo com nada disso. Isso é mais para o gerenciamento quando você está executando muitas coisas que você deseja
garantir que tudo esteja claramente organizado e entender o que cada coisa é. 4, Isso é quando você não pode tags e tinha nomes próprios e coisas assim. Mas de novo, agora, não estamos muito preocupados com isso. Além disso, vamos deixar cópias de segurança desativadas. E nós vamos bater Criar gotícula aqui. E isso vai começar a criá-lo para nós. Eu só vou demorar alguns minutos para começar normalmente. Mas você pode ver que ele já está começando a criar. E se quisermos, podemos verificar o status clicando aqui. E você pode ver começando a arrancar em si mesmo, abrir tudo. Tudo bem, então, uh, agora que ele se inicializou, em
seguida, na próxima lição, depois de passar por cima da chave SSH do Windows, nós vamos então olhar para como nós podemos realmente entrar nesta máquina. Agora mais uma coisa que eu também só quero mencionar aqui sobre o faturamento eo que você seria pago para e foram o que seria construído oceano Digital estrangeiro é se nossas máquinas ou se nossas gotículas existem, que é o que vamos ser cobrados. Então, se você desligar isso, o faturamento não vai sair. Você realmente vai ter que deletar isso. Então você pode ir, por exemplo aqui, destruído. E, em seguida, se você clicar em destruir esta gota, seguida, ele irá removê-lo, e então ele também será ido
do projeto e todos os dados que você tem lá e outras coisas, a menos que, você sabe lá você fez alguns outros backups Em algum lugar. Tudo isso terá desaparecido, mas isso também irá parar o faturamento. Então, apenas feito como uma nota importante. Se estivermos aqui e acabarmos de desligá-lo, isso não vai desligar o faturamento. Nós realmente queremos ter certeza de que esta gota é destruída. Que termo duro, mas sim, é assim que se chama. Então, sim. Se você sabe, você acabou de brincar e você não quer mais usá-lo, então você pode simplesmente entrar aqui e clicar em destruir. E então isso destruirá a gotícula.
3. SSH no Windows: Tudo bem, então nesta lição vamos dar uma olhada em como podemos configurar o SSH para ser executado no Windows. E para isso vamos usar o OpenSSH. E este aqui vai ser o oceano digital que também criamos anteriormente. Você pode ver aqui eu já criei a gota, mas nós vamos criar outra nesta lição para que possamos fazer todo o processo no Windows e apenas mostrar como você pode usar o SSH no Windows. Avançando também. Bem, para um tipo de entrar na gotícula remota. Mas também mais tarde fazendo a cópia do servidor para sua máquina e vice-versa. Então, para configurar o OpenSSH, a coisa mais fácil a fazer é apenas configurar o OpenSSH no Windows. E a primeira linha aqui vai levá-lo a uma página de documentação muito agradável da Microsoft. E se abrirmos, chegamos até aqui. Agora queremos rolar um pouco para baixo e queremos pegar este snippet aqui, que vai instalar o cliente SSH aberto. Vamos copiar isto. E agora vamos abrir o PowerShell. Como administrador, já o tenho em execução. Você pode digitar aqui,
poder, o que deve ser suficiente, e você clicar com o botão direito do mouse aqui, Executar como administrador. E isso abrirá o PowerShell para que possamos fazer isso mais uma vez. Entre aqui, clique com o botão direito em Executar como administrador. E então vamos clicar em Sim e vamos abri-lo, mas como administrador aqui. Tudo bem, então agora para habilitar SSH, você vai notar que atualmente se eu apenas digitar SSH, apenas vai me dar um erro que não é reconhecido. O comando SSH não é reconhecido. Então, depois de ter copiado esta seção aqui, eu vou colá-lo aqui novamente para o cliente SSH aberto e pressione Enter e ele vai começar, bem, basicamente instalando. Tudo bem, assim que isso terminar a instalação, vamos em frente e fechar nosso PowerShell. E então vamos reabri-lo e executá-lo como um administrador. Clique, Sim. E se digitarmos SSH, agora, veremos que temos o comando SSH disponível. E algo que também irá usar mais tarde é este comando chave, que veremos que também temos disponível. Então, como podemos gerar a chave SSH? Então, a maneira que nós vamos fazer sobre isso é, bem para um oceano digital meio que nos dá o tutorial sobre ele, mas também há uma seção aqui. Mas vamos seguir em frente e usar o oceano digital e apenas criar uma gota aqui, desta vez passando por isso um pouco mais rápido, escolhendo o padrão aqui nós vamos escolher o plano de US $5 por mês, apenas deixando o local do datacenter como tipo do padrão que ele sugere. Agora vamos criar uma nova chave SSH. Vou copiar isso, voltar para o PowerShell, colá-lo e pressionar Enter. Agora eu só vou sugerir basicamente o seguinte local. Se quisermos, podemos guardá-lo em outro lugar. Mas, por enquanto, vou deixá-la neste local padrão. Pressione Enter. Vou deixar este vazio para nenhuma senha, já que no MCA fez a senha. Então, aqui você verá a versão de senha. Mas é claro que você pode definir uma senha para sua chave apenas para lembrar que você se lembra dela porque você vai precisar dela mais tarde se você definir uma senha. Então, para mim, vou deixá-lo vazio, vazio de novo. E agora a chave foi gerada. Então, agora, se
quisermos vê-lo, vamos rolar para baixo. E novamente, copie isso aqui, entre em nosso PowerShell, cole-o. Então vamos copiar isto e colá-lo aqui. E depois vamos dar-lhe um nome. Então isso vai ser Macs, Windows, chave SSH. Vamos adicionar a chave. E então eu vou apenas criar a gotícula aqui. E agora vai arrancar para nós. E eu vou apenas mostrar-lhe como SSH para ele do Windows para, vamos rever isso novamente em um segundo mais detalhes para Mac, apenas para tipo de mostrar o comando para uma vez que isso está pronto. Vou te mostrar como podemos fazer isso. Apenas algumas outras coisas para observar um tempo isso é meio que inicializar no Windows. Também temos a opção de fazer este CD que aprenderemos mais tarde. Mas apenas para tipo de referência, algo que você vai notar às vezes no Windows é que você pode precisar usar uma barra invertida em vez de barra direta. Então, no caso de você estar tentando seguir algumas das coisas que estamos fazendo na próxima sessão. Especificamente indo para um diretório específico, que é novamente algo que vamos olhar em mais detalhes uma vez que realmente entrar em uma máquina remota. Basta lembrar que às vezes em um Windows e você já pode ver que aqui, você precisará usar uma barra invertida em vez das barras que usamos no Mac e Linux. Então é só manter isso em mente. Mas agora podemos ver aqui uma gota foi criada. Mais uma vez, eu vou fazer a versão rápida aqui, porque
vamos revisá-la com mais detalhes no próximo vídeo. Mas vou copiar isto. E só para mostrar o comando, podemos fazer aqui, SSH, raiz em ritmo no endereço, pressionando Enter. Agora vai perguntar-nos se queremos confiar no anfitrião. Você diz que sim. E então ele está imprimindo, ele vai configurar a conexão para nós. E então podemos apertar Exit novamente para sair. Então é assim que podemos configurar tudo isso no Windows. Novamente, não se preocupe muito com essa última parte
agora , porque é isso que vamos passar na próxima lição.
4. Conectando com SSH: Tudo bem, então agora vamos dar uma olhada em como podemos realmente entrar nesta máquina remota que criamos. Então, se voltarmos ao nosso projeto, esse é o lugar onde fomos levados no final da primeira lição. Mas se você apenas voltar para o projeto e ainda temos nossa máquina aqui, então ou eu posso apenas clicar nele aqui, ou eu posso realmente apenas copiar este endereço aqui, que você verá que é o mesmo que aqui. E eu vou para o meu terminal. E agora vou esclarecer isso. Este vai ser o primeiro comando que vamos aprender, o que vai ser claro. E como você pode ver o que ele acabou de
fazer, ele meio que limpou a tela para mim. Assim, sabe, se houver toda essa bagunça, eles simplesmente vão embora. Tudo bem, então vamos em frente e nos conectamos a isso. Então, novamente, temos este endereço aqui, este endereço IPv4, e vamos dizer SSH. E então nós vamos ter o nome de usuário, que nós vamos chegar em um segundo. E nós vamos ter o endereço. Agora, o nome de usuário aqui que vai ser criado por padrão para nós vai ser chamado de root. Agora esta é basicamente a raiz ou o usuário administrativo da máquina M. E nós estamos criando nossas próprias máquinas como esta, você sabe, quando você terá isso. Mas se você está em uma organização e é provável que você tenha algum tipo de usuário
diferente dado a você onde privilégios são gerenciados e tudo isso. Mas, novamente, isso é algo que a equipe de DevOps cuidará mais. Mas para os nossos casos aqui, vamos apenas usar a raiz aqui. E então podemos ver que temos este símbolo aplicativo aqui. Então temos SSH do que o nome de usuário, que vai ser uma raiz. Se fizermos isso com um 12, vamos ter aqui fora. E então o endereço IPv4, que copiamos daqui. Podemos ir em frente e desligar o volume lá também. Tudo bem, então vamos em frente e aperte Enter. E isso vai nos conectar aqui. Agora, ele está nos perguntando se temos certeza de que queremos nos conectar. E vamos dizer que sim. Agora, no meu caso aqui, eu realmente tenho várias chaves públicas diferentes. Então é possível que para você, você tenha entrado. Mas no meu caso, agora tenho um problema porque tenho várias chaves públicas diferentes. Então eu vou mostrar a vocês como nós podemos ter certeza de que nós usamos ou melhor eu tenho várias configurações de chaves diferentes na minha máquina. Então eu vou mostrar a vocês como podemos referenciar o certo no caso de você ter vários como eu, para que você possa ser autenticado corretamente. Então eu vou,
e novamente, aprenderemos este comando mais tarde. Mas apenas indo para a pasta exata onde salvamos nossa chave. Então vai ser o nome do usuário. Vamos entrar na Dot SS, H. e eu vou listar todas essas coisas. E então o que eu vou adicionar na minha conexão aqui, porque eu vou fazer SSH. Eu vou fazer menos i. Agora isso aqui, este menos I é uma bandeira e vamos ver isso mais tarde ao longo do curso para que nos permite definir propriedades extras. Neste caso, ele nos permite definir onde está a localização real da chave que queremos usar para conectar. Então, vou pegar esse local. E eu não vou usar a chave pública porque foi isso que eu enviei para a máquina. E, em vez disso, vou usar a chave privada aqui. E eu vou colocar isso aqui. E então agora ele vai usar a localização desta chave para se conectar a esta máquina aqui. Vou apertar Enter. E agora ele vai me pedir a senha que eu configurei para a chave de antemão. Se você não configurou uma senha, ela deve apenas fazer login automaticamente. Ou você terá que pressionar Enter porque você não definiu coisa. Mas eu defini uma senha para esta chave. Então eu vou digitar esse. Essa foi a senha que veio
na primeira lição quando nós realmente criamos esta chave, vai digitá-la. E agora podemos ver que estou conectado à máquina. E nós sabemos que porque no canto inferior esquerdo aqui, você pode ver que o nome da máquina vai ser a raiz aqui, bem
como a forma real, que vai ser nosso usuário aqui, bem
como o nome real do máquina. Então, sim, é assim que podemos nos conectar a uma máquina remota. E agora, todas as coisas que estou fazendo aqui, isso está na máquina remota, na Nuvem e não está mais na minha máquina local aqui. Então, sim. E, em seguida, se quiséssemos desconectar dele, só tem que fazer é apenas digitar na saída. E nós podemos ver aqui, nós desconectamos, a conexão foi fechada e agora eu estou de volta na minha máquina local.
5. Navegação básica: Agora que aprendemos como podemos nos conectar à nossa máquina remota. E vamos em frente e aprender alguns dos primeiros comandos úteis. Então eu posso redigitar o login que eu tinha antes, ou eu posso simplesmente pressionar a tecla de seta para cima e eu posso realmente pressionar a tecla de seta para cima e para baixo, o
que me permitirá navegar pelos comandos recentes que eu digitei aqui. Então eu vou apenas usar este comando de conexão novamente para que eu não tenha que redigitar a coisa toda. E eu vou apertar Enter. E então me pedem a senha. Preparei a chave aqui quando a criamos. E então ele vai nos conectar novamente aqui. E podemos ver aqui que estamos realmente conectados
à máquina remota com base nas informações que temos aqui em baixo. Tudo bem, então o primeiro comando que vamos aprender vai ser chamado PWD, que significa diretório de trabalho de impressão. Então, se acertarmos isso, agora sabemos onde exatamente em nosso sistema de arquivos estamos ou onde na máquina estamos. E se nos desconectarmos disso de novo, e eu fizer a mesma coisa na minha máquina local. Então podemos ver aqui, ok, estou atualmente na pasta Usuários e o nome deste usuário. Mas se realmente se conectar à máquina remota aqui, basta digitar a senha novamente para a chave. Em termos de máquina remota, estou atualmente na pasta raiz aqui. Então isso é apenas para você tipo de obter uma referência de onde você está atualmente em uma máquina para que quando você mudar diretórios, que vai ser a próxima coisa que vamos aprender agora como podemos mudar diretórios depois de descobrirmos pela primeira vez onde esses diretórios estão e o que está disponível para nós. Então isso nos dá um senso de orientação e onde estamos. Certo, então o próximo comando é um que já vimos várias vezes, que é este Ls. E então em um segundo vamos ver o ls menos l. Então o LS aqui vai apenas listar as pastas que estão disponíveis neste caso ou na verdade todas as pastas e arquivos que estão disponíveis como crianças. Há apenas um. Então podemos fazer “ls”. Nós também podemos fazer ls menos l, que vai fazê-lo em um formato longo com mais algumas informações. Então podemos ver aqui que temos um tipo de informação extra aqui. E neste caso, temos apenas um diretório extra que podemos dizer porque está listado como azul aqui. Certo, então o próximo comando que vamos
aprender será o comando change directory. Vamos ser c, d.
Então, se quisermos nos mover para um local diferente, então podemos nos mover entre pastas como costumamos fazer em nosso localizador ou algo assim. Quando clicamos em uma pasta, estamos mudando para essa pasta, estamos mudando para esse diretório. E quando clicamos na seta para trás para subir uma pasta, vamos sair dessa pasta novamente. Alterar diretórios estão indo para cima e para baixo e para dentro e para fora das pastas. Então, neste caso, em uma máquina remota, podemos apenas tentar mudar para este diretório aqui. E você vai notar que quando você realmente tem pastas ou diretórios, eles vão terminar com essa barra aqui. Então, se eu entrar aqui, agora eu posso dar uma olhada no que está aqui dentro. Certo, então temos o que parece ser outro diretório. E eu também posso tentar entrar nessa. E mais uma vez aqui posso listar o conteúdo aqui e podemos ver que temos vários outros itens diferentes aqui. Então agora talvez, você sabe, para mover muito em torno de diretórios e nós meio que nos perdemos eu onde estamos atualmente, nós podemos apenas fazer o diretório de trabalho de impressão PWD, que vai nos dizer nossa localização atual em todo esse sistema operacional. E daí se quisermos voltar? Bem, uma coisa que podemos fazer é fazer CD e depois podemos fazer ponto duplo. Agora, o ponto duplo sempre vai nos levar até um. Então podemos ver aqui. Agora nós movemos para cima uma pasta onde basicamente movido para fora desta pasta Lx D. Outra opção que podemos fazer é fazer cd menos, o
que nos leva de volta ao nosso local anterior. Neste caso, será a pasta LSD, mas podemos mudar mais de uma direção de cada vez. O que isso significa? Bem, vamos dar uma olhada. Se fizermos cd, por exemplo, quando fazemos duplo ponto barra, ponto
duplo, isso significa que vamos voltar para cima de um diretório e então vamos voltar para outro diretório. Então devemos então estar novamente nesta pasta raiz aqui. Se apertarmos Enter e olharmos para a nossa localização atual, podemos ver novamente que estamos nesta pasta raiz. E se fizermos CD menos, e devemos ser levados de volta para o local que estávamos antes disso, que é exatamente este aqui. Agora, isso se torna realmente útil quando você precisa alternar entre pastas. E há muitas pastas e eles são tipo de subdiretórios lá dentro. Então, por exemplo, vamos para essa pasta 16, 9, 2 e digamos, ok, e agora estamos nessa pasta, e em vez disso queremos ir para a comum, que é voltar para Alex D, e então indo em comum. Então o que podemos fazer é voltar para cima uma pasta e depois. A partir daqui, podemos ir para a pasta comum. Então podemos ver agora nós mudamos para a pasta comum primeiro subindo um e depois indo para a pasta comum a partir daí. Então, há coisas muito boas que podemos fazer aqui. Há também algumas outras referências que podemos usar. O primeiro vai ser esta Tilda aqui. Agora isso significa levar-nos para a localização do diretório home. Então, se pressionarmos Enter aqui, neste caso, nosso diretório home é realmente esta pasta raiz aqui, dependendo da máquina. Por exemplo, se eu desconectar daqui e eu digamos ir para a pasta Downloads, que vai ser apenas o local de downloads em minha máquina pessoal agora. E então eu mudo o diretório para o local inicial. Então isso vai me levar de volta para este aqui, que vai ser a minha casa pessoal na máquina pessoal. Então novamente, dependendo de onde estamos e do caso da máquina pessoal, isso me levou a este local. Mas no caso da máquina remota, isto aqui foi definido para ser o nosso diretório pessoal. Tudo bem, vamos nos conectar de volta à nossa máquina remota e apenas fazer
login novamente para outra coisa que podemos fazer ou outra opção que temos para referência será apenas mudar o diretório. E se temos uma barra, a frente, então isso significa levar-nos para o local raiz absoluto, os arquivos ou pastas mais altos, ou o local que existe. Então, se formos aqui, imprimimos nosso diretório atual. Podemos ver, enquanto antes de estarmos nesta pasta raiz, aqui estamos realmente no tipo de local mais alto. Então, agora, se listarmos o conteúdo aqui, podemos ver que nossa pasta raiz é um dos conteúdos aqui, mas na verdade temos também vários diferentes aqui. Então este é o nível mais alto que podemos ir. Agora, isso também é o que usamos antes quando, por exemplo, eu era SSH em que eu estava dando a localização absoluta do caminho dessa chave em minha máquina. Então podemos ver que começamos no topo. Eles vão ser a pasta Usuários. Entramos no nome do usuário, então entramos nesta pasta SSH ponto aqui, este duplo aprender sobre mais tarde. Depois entramos nisto. Em seguida, vamos usar este sublinhado ID, RSA, sublinhado arquivo Digital Ocean. Então, podemos ver que este é um caminho de localização de arquivo absoluto. Então nós também podemos usar caminhos relativos, e eu vou usar isso na verdade agora para fazer o login novamente. Então, mais uma vez, vou sair da máquina remota. Vamos imprimir o diretório de trabalho atual. A partir daqui, vou mudar para a pasta SSH ponto. Porque lembre-se daqui de cima, a pasta SSH ponto está realmente contida dentro desta pasta aqui. Há duas maneiras de fazer isso. Um deles é assim. Outra maneira que eu posso fazer isso é que eu posso realmente referenciar minha localização atual dizendo, usando uma barra de ponto. Então, o que a barra de ponto significa é usar o local atual como referência. Considerando que a barra significa usar o diretório superior ou o local superior como referência. E uma barra Tilda estar usando o diretório home como referência. Mas é claro que podemos fazer ponto barra, mas nem precisamos deles se quisermos, podemos fazer ponto barra. E, em seguida, ponto SSH vai ser a pasta. Então podemos ver aqui estamos na pasta SSH. Ou se voltarmos para fora e simplesmente mudamos para a pasta SSH ponto, novamente, não precisamos da barra ponto aqui necessariamente neste caso. Mas novamente, é bom saber porque nos dá, É comumente usado e é uma boa maneira de tipo de referência sua posição atual. E assim você está fazendo tipo de referências de posição relativa. Tudo bem, então vamos continuar usando isso. Então agora realmente tem todas essas chaves diferentes disponíveis aqui. E mais uma vez, vou me conectar ao servidor. Mas ao invés de dar o caminho absoluto que fiz aqui, vou dar o caminho relativo. Então agora que estou neste local, posso dizer, por exemplo, SSH menos a. Eu quero ir para isso, mas eu preciso ter certeza de dar a chave certa. Então eu vou fazer a localização atual da chave vai ser id, RSA, sublinhar oceano digital. Então essa é a posição relativa daqui. É onde está localizado. Então eu posso fazer isso. E então, novamente, ele vai me pedir a senha, que eu posso usar para entrar aqui. E, claro, neste caso, eu também não preciso dar porque o arquivo está bem ali. Então eu não preciso referenciar o tipo de relevante ou o, o local atual fazendo barra de ponto. Mas eu posso realmente apenas referenciá-lo diretamente porque eu estou na mesma pasta, eu estou no mesmo diretório onde o arquivo está. Então podemos ver aqui há diferentes opções disponíveis para nós em termos de mover-se usando caminhos absolutos,
parentes passam, referenciando a localização do nosso diretório home também estão indo para cima e para baixo para frente e para trás, basicamente usando esses pontos duplos. E novamente, isso é muito bom porque é muito fácil de navegar por aí. Podemos voltar e ir, por exemplo, para esta pasta de usuário. E, em seguida, se fizermos uma aba dupla,
em seguida, ele vai nos mostrar todas essas pastas aqui. Se houver um monte de pastas, ele vai nos pedir para risco se realmente queremos ver todas as pastas. Caso não queira, basta pressionar o controle C, que cancelará essa operação. Mas então podemos ver aqui, então podemos entrar, vamos apenas escolher uma pasta aleatória aqui. Então agora estamos na pasta raiz. E apenas usando este caminho do diretório de campeões, podemos subir um e podemos ir para duas pastas diferentes abaixo da linha. Então isso é muito fácil para nós navegar e se mover em um local de arquivo. Novamente, aqui porque tudo o que temos disponível é o terminal que realmente não temos, não
podemos puxar para cima como este Finder, ou podemos ir para essas pastas e clicar ao redor com as pastas. Toda essa navegação que estamos fazendo tem que ser feita usando o terminal porque não há nenhum componente gráfico para isso. Agora o que também é muito bom saber, e eu acabei de limpar em nossa tela aqui novamente, estamos usando o comando clear. É que muitos comandos, ou basicamente quase todos eles vêm com opções de ajuda. Então, por exemplo, se você usar este comando change directory e fizermos este traço, traço, ajuda, pressionamos Enter nos mostrará ou
nos dará mais informações sobre o que exatamente esse comando faz. Da mesma forma, se usarmos este comando lista ls, fazemos traço, traço ajuda. Aqui ele nos dirá informações sobre o que ele faz. E também nos mostrará todas as diferentes bandeiras que podemos usar ao longo deste comando. Então podemos ver aqui, usamos o ls menos l, que é bem aqui. Então, o que faz uma longa lista de formato. Mas você pode ver aqui há muitas bandeiras diferentes e, claro, não faz sentido passar por todas elas. Normalmente ls menos S é apenas um muito bom porque permite que você veja o conteúdo de um diretório. Então tipo o mais comumente usado ou o que eu uso mais comumente. E se você precisar de algo específico, você pode usar diretamente esta opção de Ajuda para ver quais outras coisas estão disponíveis no caso de ele ser esquecido. A bandeira, novamente, as bandeiras são todas essas coisas que você pode colocar aqui. Ou você esqueceu a bandeira e só quer saber qual é a certa. Ou você está tentando descobrir o que exatamente possível. Porque você quer fazer algo específico e você sabe que talvez esta seja a recomendação, mas deve haver algumas outras opções. Agora, uma outra coisa só para notar é que com essas bandeiras, você pode realmente fazer várias delas juntas. Então você poderia fazer um, você sabe, como um L menos e, em seguida, menos outra coisa e simplesmente ter eles sem espaços entre eles. Então, neste caso, você sabe, nós não vamos fazer isso com este comando lista porque a versão ls menos l, na verdade
é o mais conveniente, na minha opinião, é meio que muitas vezes usado apenas para entender. Está bem. Então, primeiro você faz PWD, que é onde eu estou atualmente? E então você faz um “S” menos “L.”. Quais pastas estão disponíveis apenas para obter um senso de orientação. Mas se houver outros comandos ou outras bandeiras que você deseja usar com um comando, então você pode usar o menos l e, em seguida apenas tendo separado com espaços que menos um e menos o. Você pode encadear essas coisas diferentes juntos, Só colocando espaços entre eles. Só estou me certificando de usar sempre o chapéu menos. Claro, para isso, Também é importante que as bandeiras diferentes realmente trabalham juntas. Porque provavelmente o que eu fiz, provavelmente não funcionará juntos e então, você sabe, apenas jogue um erro. Mas em alguns casos em que você deseja especificar várias coisas diferentes, você pode realmente fazê-lo fornecendo várias bandeiras diferentes.
6. Como criar pastas: Certo, agora que aprendemos alguns conceitos básicos de conexão com uma máquina virtual, bem
como algumas coisas navegacionais em termos de orientação onde estamos, como nos mover, como ver quais arquivos e pastas estão contidos. Vamos dar uma olhada em como podemos realmente criar arquivos, bem como criar pastas e diretórios, e como podemos removê-los também. Então, primeiro, vamos apenas ir em frente e verificar onde estamos novamente, imprimindo nosso diretório de trabalho. Ok, então nós estamos na pasta raiz aqui, e vamos apenas listar o conteúdo. Certo, temos mais uma pasta aqui. Então, digamos que queremos criar um diretório extra para copiar arquivos de outro lugar. Nós só, você sabe, nós queremos uma pasta extra por qualquer razão que possa ser. Bem, a maneira que podemos fazer isso é usando este comando MKDIR, fazer veados ou fazer um diretório. E depois colocamos o nome do nosso diretório. Por exemplo, vamos apenas criar um diretório que vamos chamar temporário que irá apenas criar ou manter alguns dados temporários. E se apertarmos Enter e listarmos o conteúdo, podemos ver que temos agora o nosso diretório temporário aqui. E se mudarmos para isso e listarmos o conteúdo, e aqui vemos que não há nada contido dentro, mas temos este diretório disponível. Então também podemos mudar de volta para fora novamente. E claro que ainda vai estar lá. Então essa é uma maneira. Mas às vezes também queremos criar diretórios aninhados que queremos criar um pai. E então nós também queremos criar um subdiretório dentro disso. Então, por exemplo, digamos que queremos ter nossa pasta de nível superior. E aí dentro queremos ter algum tipo de outra especificação. Por exemplo, vamos criar uma pasta chamada usuários. E aqui vamos ter um, outro usuário que podemos chamar talvez usuário1, seja lá o que for. Então, se nós apenas temos nosso comando como este, ele realmente vai falhar porque o usuário Directory não existe. Mas se quisermos criar ambos os diretórios ao mesmo tempo, tudo o que temos a fazer é adicionar um sinalizador extra que vai ser menos p. E se adicionarmos isso, então ele também irá criar o pai, que é o diretório deste usuário aqui, que como podemos ver aqui, não existe. Então vamos criar os usuários
e, em seguida, dentro que ele irá criar o usuário 1. Então vamos em frente e executar isso. E podemos ver agora que temos o diretório do usuário criado. E se entrarmos aqui, podemos ver dentro aqui também temos o usuário um diretório. E então podemos entrar aqui também. E podemos ver que este, claro, vai ficar vazio. Então, voltando para camadas para nossa pasta raiz, já que agora nos
movemos para, podemos voltar para assim. E podemos ver mais uma vez, Ok, estamos no início onde estávamos antes. E, claro, podemos confirmar isso apenas imprimindo nosso diretório de trabalho para. Agora, em alguns casos, você, é
claro, talvez você queira criar várias pastas I uma vez. Então vamos apenas alternar para sua pasta Usuários aqui novamente, digamos que queremos criar os usuários 234 também. E podemos fazer dir. E aqui nós podemos realmente encadear estes juntos para que possamos ter nossos primeiros usuários B de entrada também. E podemos fazer um espaço e ter os três abusadores. E podemos fazer outro espaço. Como o abuso foi quatro, e assim por diante. Então isso criaria cada um desses diretórios dentro da mesma pasta aqui para nós, não-aninhados e RNA de qualquer maneira. Então nós podemos realmente fornecer vários parâmetros diferentes, são vários argumentos diferentes para o nosso comando aqui. Mas é claro, cada um deles vai ficar vazio como podemos ver se olharmos lá dentro. Então, você sabe, é claro que há um tipo de limite para quanto você quer fazer isso usando como um comando terminal versus se você precisa criar um monte de pastas que provavelmente farão parte do seu código. Mas, você sabe, se você precisar criar pastas e múltiplos é e isso é uma
espécie de uma abreviação agradável e fácil de fazer tudo isso. Tudo bem, então outra coisa que já vimos antes, e vamos voltar uma camada. Então temos nosso diretório temporário aqui, temos nossos usuários. E aqui agora algo que já vimos antes onde há algo que tinha um ponto na frente dele. E este é realmente um tipo especial de pasta que é uma pasta oculta. Então, podemos criar uma pasta oculta e vamos Slater ver a mesma coisa para um arquivo oculto fazendo um diretório. E então vamos colocar um ponto na frente daqui. E isso podemos chamar de oculto. Não precisamos chamar isso de escondido. O ponto na frente é o que o torna oculto, mas para maior clareza também chamará de pasta oculta. Então, se apertarmos Enter e se agora tentarmos dar uma olhada no conteúdo, nós realmente não veremos a pasta. E mais uma vez, isso é porque está escondido. Então, se quisermos ver uma pasta oculta, e também precisamos usar o menos uma bandeira, que mostrará tudo. Então, se formos em frente e executar isso, podemos ver aqui há realmente várias pastas escondidas diferentes aqui. E a nossa pasta escondida, vamos ver se conseguimos encontrá-la é sim, bem aqui. Então ainda podemos alternar para ele mesmo que seja uma pasta oculta, ainda
podemos mudar para esta pasta. Então ainda podemos mudar para a nossa pasta oculta. Pintor e , em seguida, olhar para o conteúdo dentro. E assim ainda existe. É que, em alguns casos, você pode querer criar arquivos ocultos para apenas colocá-los fora de vista porque os usuários não
devem interagir com eles ou qualquer coisa do tipo. Então, sim, em alguns casos você verá esses pontos na frente. E se alguma vez te perguntaste porque é que ele não os consegue ver. Você também notará isso com a coisa SSH, especialmente em sua máquina local, você tem a pasta SSH ponto. Então, se você estiver andando por aí e você sabe, apenas usando seu localizador normal e você realmente não tem a configuração Mostrar pasta oculta ativada, então algumas dessas pastas podem não aparecer. E novamente, é porque eles são pastas ocultas que ainda podemos acessar. E especialmente na linha de comando aqui, há uma maneira fácil de ver todas essas pastas ocultas usando este extra menos uma bandeira. E podemos ver neste caso novamente para o comando list, o ls, combinamos várias bandeiras diferentes. Então um deles não está no formato longo. E então nós também temos a outra bandeira, que é a menos a1, que apenas garante que nós podemos ver todos eles. Agora, enquanto já estamos falando sobre esse comando list, há realmente uma coisa legal que podemos combinar com as pastas também. Podemos fazer, por exemplo, em vez de apenas digitar, mostrando a lista da pasta atual. Se quisermos olhar para uma pasta específica, em vez de alternar em primeiro lugar, podemos simplesmente colocar essa pasta no final aqui, e então ele vai nos mostrar o conteúdo dessa pasta sem realmente nós alternar para que pasta. Então, outro tipo de abreviação para poupar tempo. Agora, às vezes você pode querer criar pastas que tenham espaços nelas, por exemplo. Então, como você faria isso? Porque digamos que queremos criar uma pasta que tenha, você sabe, vamos chamá-la de FirstName e Sobrenome, e isso vai ser apenas o nome da pasta. Então, se nós apenas escrever espaço
FirstName, LastName, então, como nós aprendemos de antes, isso vai criar duas pastas para nós. Um deles vai ser chamado FirstName e o outro vai ser chamado de sobrenome. Mas queremos que esta seja uma pasta que tenha o espaço dentro dela. Como é que fizemos isso? Bem, o segredo aqui é usar aspas. Então, se olharmos para o nosso conteúdo aqui, podemos ver que temos o nome e sobrenome aqui. E então, se quisermos mudar para ele, então geralmente podemos usar aspas, mas algo mais que temos é esse caractere de escape, essa barra invertida, que se você pressionar Tab, ele vai realmente auto- Completa, uh, para você. E você geralmente pode usar tab para meio que ajudar o autocomplete, contanto que haja uma opção concreta para autocompletar, vou mostrar-lhe um pouco mais sobre isso em um segundo. Podemos ver aqui, em vez de usar aspas, nós realmente temos uma barra invertida. Agora com isso, barra invertida significa que esta é uma fuga especial que este espaço aqui não deve ser contado como um espaço real, mas sim devemos tratá-lo como apenas mais um personagem como temos aqui. E assim por diante. Dessa forma, podemos usar espaços e, na verdade, oops, então vamos para esta pasta como podemos ver, para que possamos mudar minha gota. E, claro, a outra coisa que podemos fazer é usar aspas. E isso nos colocará na pasta aqui também. Então, esses estão meio que voltando. Então essas são duas maneiras que podemos lidar com aspas com espaços. Um deles vai usar aspas. E, em seguida, a outra coisa vai ser usar esta barra invertida especificação aqui. E então, se você encontrar lugares onde você tem pastas que têm espaços, o
que é muito comum quando você apenas cria um normalmente como você basta clicar com o botão direito do mouse em sua área de trabalho e você cria uma pasta e , em seguida, você coloca um espaço e foi uma coisa normal de se fazer. Então, sim. Apenas certifique-se de que você está usando uma barra invertida ou que você está usando aspas que o sistema de arquivos ou que o sistema operacional aqui entenda corretamente que há um espaço lá, e estas não são coisas separadas. Então, voltando ao ponto sobre guias e usando guia para conclusão rápida e basta olhar para o nosso diretório atual. Você pode ver que temos nossa coisa de usuários aqui. Então, se quisermos mudar para isso, eu posso realmente digitar você e pressionar Tab e ele irá completá-lo automaticamente para mim. Eu ia ser um pouco diferente aqui. Digamos que eu queira alternar para este usuário para, então eu posso, ou eu posso digitar CD, você guia, e ele irá auto-completar tanto quanto possível. Assim, podem ver, neste caso, que
tudo o que começa com a UE também tem um SCR por trás disso. Mas se eu pressionar tab novamente, ele não vai saber o que mais auto-completar porque existem opções diferentes e agora eu tenho que ajudá-los. Então faça um completo parcial. Pressione Tab duas vezes. Ele mostrará as opções que estão disponíveis. Às vezes, se você pressionar Tab duas vezes, ele vai dizer que há muitas opções. Você realmente quer exibi-los? Você pode não ter nenhum uso n ou você pode pressionar o controle C para tipo de cancelar o que você estava fazendo. Snoop, veja se pressiono o controle C, cancela o que eu estava escrevendo. Assim, você pode ver que o preenchimento automático é realmente útil porque ele apenas economiza um pouco de tempo, especialmente se os nomes ficam mais longos. E assim você pode usar o primeiro par de caracteres e apenas ter um autocomplete o resto. E então eu vou digitar aqui para denotar a pasta final. Neste caso, eu quero entrar, e então é claro que estamos mudando para ele.
7. Como criar arquivos: Então, é claro, as pastas são apenas metade do ponto. Normalmente temos pastas para conter arquivos. Nahal, a maior parte do tempo estaremos criando arquivos ou através código ou vamos levá-los através de outro lugar e você de um banco de dados. E então vamos pegar esses dados e vamos salvá-los. Mas às vezes nós também queremos apenas criar arquivos para qualquer finalidade para configurações, ou apenas ter algum tipo de arquivo rápido que podemos criar para
que possamos colocar em um par de valores de teste e tipo de loop sobre isso. Então vamos em frente e dar uma olhada em como podemos criar arquivos. Então, para fazer isso, vamos usar este comando V i espaço. E agora podemos colocar o nome do arquivo que queremos. Por exemplo, vamos criar um arquivo chamado teste. Na verdade, vamos chamar isso porque não somos usuário2, vamos chamar esse usuário para Info e é uma boa prática apenas adicionar uma extensão. Então nós vamos adicionar a extensão TXT ponto para denotar que este será um arquivo de texto. Então, se eu pressionar Enter aqui, ele vai realmente me levar para um modo de edição, como você pode ver aqui. Agora há um monte de coisas e há um monte de truques que você pode fazer com esta edição que eu não vou entrar em. Mas se você realmente gosta disso, então, você sabe, há um monte de coisas que você pode procurar para VI sobre um monte de abreviaturas e navegações rápidas e tudo mais. Eu principalmente usá-lo para apenas tipo criar um arquivo para que eu possa rapidamente colocar em alguns valores de teste e eu posso, em seguida, usar esses arquivos. Execute meu código porque geralmente acho que é mais rápido e fácil criar um arquivo de texto no terminal em vez de entrar na edição de texto, digitando os valores, clicando em Salvar, procurando a pasta onde eu quero salvá-lo e assim por diante. Acho este processo muito mais rápido. Então, sim, e vamos apenas rever o básico aqui de como podemos inserir valores, como podemos excluir, você sabe, texto dentro, como podemos salvar nosso documento. Mas, novamente, há um monte de coisas extras que você pode fazer com VI que eu realmente não vou entrar em porque não é realmente muito pertinente. Mas se você estiver interessado nisso, é claro, você sabe, você pode mergulhar um pouco mais na toca do coelho. Certo, então é claro que a primeira coisa que vamos fazer com arquivos vazios quer colocar algumas coisas nele. Agora, neste caso, se você apenas tentar pressionar algo como n, não vai realmente fazer nada. Você não está realmente no modo de digitação agora. Então, primeiro você precisa obter o modo de digitação. Então a maneira que você faz isso é pressionando I. Isso agora vai colocá-lo no modo de digitação e agora você pode inserir texto. Então você pode ver que eu posso apenas digitar algumas coisas aleatórias e eu posso inseri-lo, ir para uma nova linha tipos e mais coisas, e assim por diante. Agora, se eu quisesse sair do modo de digitação, eu tenho que clicar em Escape. E agora, se eu pressionar algo de novo, não vai me permitir inserir valores. Tudo bem, então digamos que eu coloquei em alguns valores de teste que eu quero usar. Estou feliz com isso. Então, como é que saímos daqui? Então, para sair daqui primeiro, você quer ter certeza de que você salvá-lo. Então você vai fazer dentro ou depois de pressionar Escape. Você quer ter certeza de que você não faz isso no modo de inserção. Mas pressionando Escape. E você vai fazer um cólon, o que você pode ver no canto inferior esquerdo aqui. E então vamos fazer o cólon W é para salvar. Então, se apenas atingirmos o cólon W, então nós o salvamos. Nós escrevemos como você pode ver no fundo aqui, mas ainda não estamos fora. Por isso, se quiseres sair, podemos fugir outra vez, por precaução. Embora neste caso não tenha feito nada porque eu já estava nesse modo. Mas o cólon Q nos permitirá sair. Vamos sair desta visualização do texto. Então, se quisermos olhar de volta para o arquivo, então podemos fazer VI. E eu vou apenas deixá-lo auto-completar e nós vamos abri-lo de volta com nosso editor de texto aqui você pode ver o conteúdo do arquivo está salvo. Então vamos dizer que eu quero adicionar mais uma linha, e agora eu quero salvar e sair novamente. Então, em vez de fazer cólon W e cólon q, você pode combiná-los fazendo cólon WQ, que é apenas uma maneira rápida muito brilhante e seguro para fora e para salvar e sair. Então, apertamos Enter, você vê que ambos salvamos e desistimos. E isso novamente torna um pouco mais fácil para nós passarmos por esse processo mais rápido. Agora há mais uma coisa que você pode fazer, que é colocar em outra coisa. E agora queremos desistir novamente. Mas em alguns casos, quando queremos sair, podemos ser lançada uma mensagem de erro por qualquer motivo que colocamos algo inválido, fizemos algo inválido. E por alguma razão estamos presos aqui. Então, se você quiser desistir sem fazer nada, porque agora se eu tentar desistir, vai reclamar que eu adicionei alguns dados e
não está me deixando desistir porque algo precisa ser feito porque eu mudei alguma coisa. Então, absolutamente, quero desistir. Então eu posso fazer q ponto de exclamação, que vai forçar a sair. E isso só vai passar por esse erro. Mas se eu abrir isso de novo, podemos ver que, bem, o que quer que eu tenha feito, é claro, não foi salvo. Então podemos fazer isso de novo, indo para uma nova linha. E eu só estou desistindo. E podemos ver o conteúdo e não mais lá. Tudo bem, então algo que eu geralmente gosto de fazer é ou você pode fazer depois que você acabou de editar apenas WQ, onde você pode fazer WQ ponto de exclamação WQ. Claro que é um pouco mais seguro porque você realmente confirma que seu conteúdo está escrito. Mas novamente, se você só precisa sair, em
seguida, usar este ponto de exclamação q irá certificar-se de que você pode. O arquivo. E, claro, novamente, a maneira como chegamos a isso é para sempre um modo de inserção, que chegamos através do batismo. Vejo que não foram inserir modo no canto inferior esquerdo e, em seguida, basta pressionar Escape. E isso nos levará de volta a este modo, onde podemos então pressionar os dois pontos para fazer
o comando e, em seguida, Salvar ou simplesmente sair, como podemos ver aqui. Agora há alguns outros truques úteis legais que eu também quero mostrar-lhe porque eu usá-los. Semi muitas vezes é, em vez de entrar no modo de
inserção e remover e, em seguida, sair do modo de inserção, você pode realmente
apenas ficar neste nó original fazendo apenas pressionar X para excluir o personagem que você está, como podemos ver aqui. Então isso é bastante útil. E só porque temos esses diferentes modos interativos, outra
coisa que você também pode fazer é clicar em W D, o que tirará essa linha. Você também pode clicar em Shift O, que apenas fará você inserir
nesta linha aqui, bem como mover isso para a próxima linha, que também é muito útil. Então, sim, apenas um tipo extra de coisas úteis aqui. Porque temos esses diferentes modos de interação. Um deles vai ser o turno. Se você fizer isso novamente aqui você pode ver quando eu faço Shift O, ele irá para o modo de inserção, bem
como adicionar uma nova linha, que é apenas um pouco mais conveniente, usando o X para excluir caracteres individuais. E então, se quisermos, podemos usar o duplo d para apagar completamente a linha, e assim por diante. Dessa forma, fica um pouco mais fácil editar esses arquivos de texto. Mas, é claro, se você vai estar fazendo muita edição e você só quer fazer isso, especialmente se você estiver executando código em um editor adequado, você não quer fazer isso. Tin VI, pelo menos na minha opinião, não
acho que seja tão bom. Acho que é muito mais fácil fazer isso em um editor normal. E então, se quisermos saber se você precisa mover código para uma máquina em algum lugar, então faça isso usando o GitHub ou copiando, que veremos também mais tarde. Mas eu escrevo a minha preferência, não escreveria código aqui porque é um pouco complicado,
hum, e há um monte de coisas legais que você obtém com um editor de código. Tudo bem, então vamos em frente e sair dessa sem salvar. E então, se olharmos para ele novamente e vermos aqui contrato, então de volta ao que eles eram antes. Certo, como vimos antes, podemos criar diretórios ocultos. Também podemos criar arquivos ocultos. Isso geralmente é feito se você quiser criar arquivos de ambiente semelhantes. E aprenderemos sobre algumas coisas de ambientes mais tarde. Mas algo que você verá muitas vezes é algo como ponto e que irá conter variáveis de ambiente. E isso é algo como ponto n para local. Tenho um erro de digitação aqui, acho que sim. Vamos sair daqui. E, na verdade, se eu não salvar nada, você verá que este arquivo nunca foi criado. Do ls menos l menos um apenas para olhar para todos os arquivos. Então, novamente, se entrarmos em ponto traço local, e então aqui eu posso até ter alguns dados de ambiente, e então eu posso salvar isso e sair. Então eu olho para o conteúdo do arquivo. Agora podemos ver aqui temos este arquivo de ambiente oculto aqui com este arquivo oculto, que neste caso é para variáveis de ambiente. E há outra coisa que você terá como talvez você tenha um ambiente local. Em seguida, você terá arquivos de ambiente de teste e você terá como arquivos de ambiente de produção. Para que você possa usar esses ambientes diferentes
dependendo do que você precisa para se conectar ou de qualquer trabalho que você esteja lá. Apenas certificando-se de que você tem essas configurações de rapidamente disponíveis. Mas na maioria das vezes você só vai fazer o uso de arquivo oculto para que eles
realmente não aparecem quando você está passando por pastas padrão ou algo assim. Porque você não quer incluí-los. Além disso, quando você está carregando para obter hub, você nunca quer incluir os arquivos de ambiente apenas para ter certeza de que essas configurações são meio que mantidas segredo e não apenas carregadas lá para que todos vejam, mesmo que esteja dentro da sua própria organização. De qualquer forma. Então isso é sobre pasta oculta é criar arquivos, arquivos
ocultos, acessar arquivos, editar arquivos. Então agora temos esses arquivos. Há um comando que vimos
no início quando estávamos realmente criando nossas chaves SSH. E isso foi o Cat, o que nos permite ver o conteúdo do arquivo. Então, se usarmos cat e nós, por exemplo, queremos imprimir o conteúdo deste arquivo de texto aqui. Então vamos ver que estamos apenas impressos para fora para a nossa saída padrão aqui sem que tenhamos que entrar e olhar para ele. Então, sim, podemos usar isso apenas para olhar o conteúdo do arquivo. E eu sei que criamos os arquivos de texto aqui, assim como o ambiente oculto. Eu só quero especificar que você não precisa criar um ponto arquivos TXT. Você pode realmente criar outros também. Depende apenas da extensão que você usa. Mas, por exemplo, podemos criar um usuário um dado e podemos chamá-lo de um arquivo CSV ponto. Mas, é claro, qualquer extensão de arquivo que você esteja usando, isso também diz às outras pessoas sobre o que elas podem esperar desse arquivo. Então, se criarmos um arquivo CSV, queremos ter certeza de que temos como formatação adequada. Portanto, precisamos usar vírgulas, por exemplo, ou ponto-e-vírgula, dependendo da formatação que você está usando. Temos outro cabeçalho, coluna dois, e então temos um valor um. E queremos deixá-la vazia. Nós podemos, bem, nós podemos ter o valor dois ou o que seja, mas nós só queremos ter certeza de que na verdade ele não teria aquela vírgula extra lá. Mas nós só queremos ter certeza de que quaisquer extensões que estamos usando para nossos arquivos, apenas certifique-se de que as extensões também dizem às outras pessoas o que esperar neste arquivo. Portanto, certifique-se de respeitar as extensões que está a utilizar. Mas é claro, você sabe, eu só queria te mostrar isso porque ele só mostra que você não está limitado a apenas criar arquivos de texto com VI e realmente apenas, você sabe, nazista basicamente criar o que você quiser.
8. Removendo pastas e arquivos: Certo, criamos um monte de coisas. Agora vamos dar uma olhada em como podemos nos livrar de algumas dessas coisas. Então, olhando para o conteúdo atual aqui, digamos que queremos excluir nosso usuário um Data dot CSV. Como podemos apagar isso rapidinho? Bem, podemos usar o MR para remover. E então podemos fazer aqui temos o parcial, completo porque temos o usuário sublinhado um, o usuário sublinhado dois. Então agora ele não sabe qual deles usar. Vamos pegar o sublinhado do usuário um e apertamos Remover com isso. Então removerá isso para nós. E nós também podemos fazer, eu só vou recriar um bem rápido apenas e procurar um pouco de lixo aqui. Não importa agora porque não queremos usá-lo. Então temos dois arquivos aqui. Se quisermos remover ambos, então podemos usar nosso usuário um e
podemos seguir a mesma sintaxe que temos para o diretório make. E podemos apagar, colocar os dois aqui. Então agora nós temos, neste caso, deletado ambos e vamos apenas recriá-los novamente. Então, há alguma outra sintaxe legal. Só de tê-lo assim. E também tratar este novamente e guardá-lo apenas para recuperar os nossos ficheiros. Então outra coisa legal que podemos fazer é usar temos Usuário 1. Se colocarmos uma estrela aqui, então ela realmente preencherá o resto da informação. Então o que a estrela aqui significa é que vai pegar qualquer padrão e tem e então ele vai preencher o conteúdo aqui dentro. Assim, por exemplo, remover usuário estrela sublinhado irá remover tudo o que ele vê neste diretório aqui que segue o sublinhado padrão do usuário e, em seguida, qualquer outra coisa. Então, neste caso, o usuário sublinhado um e sublinhado dois será removido porque eles seguem este sublinhado de usuário na frente, e então eles apenas têm o que quer na parte de trás, não importa. Então, se
executarmos isso, podemos ver que ambos os arquivos foram removidos. E vamos recriá-los rapidamente novamente. Porque há outras coisas que você pode fazer no arquivo CSV. Então você pode, naturalmente, também brincar com isso, mas você provavelmente pode adivinhar se nós removemos estrela e, em seguida, temos ponto TXT no final,
ele irá remover tudo o que segue o padrão de sublinhado do usuário na frente e, em seguida, o que quer que ele está no meio. E então ele tem que ter ponto TXT no final, que neste caso será apenas este arquivo TXT ponto e o CSV holandês deve ficar, que podemos confirmar se executarmos isso. Vemos aqui o único arquivo neste caso que seguiu este padrão foi este aqui? Então, é claro, isso se torna mais útil como você tem muitos mais arquivos. Mas é claro que você também quer ter cuidado com o uso da estrela aqui porque é um monte de danos que você pode fazer se você não verificar corretamente o que você está fazendo e você pode estar
acidentalmente removendo arquivos que você realmente não quer remover. Então, há muita utilidade que a estrela tem. Mas é claro que você quer apenas ter certeza de que você é cuidadoso com isso também. Então vamos criar esse arquivo extra. Mais uma vez. Qual foi? Sim, T é um. Então o que vamos fazer tudo bem. Então temos nossos dois arquivos de novo. Outra coisa que podemos fazer é também apenas remover estrela, que irá remover tudo. E é realmente imprimir todo o conteúdo, incluindo o arquivo oculto 0 menos 0 menos a. Então para fazer remover estrela, que irá remover tudo. E imprimimos tudo. Então podemos ver aqui que removemos nossos dois arquivos. Nesse caso, nosso arquivo oculto não foi realmente afetado. Então, se você quiser remover nosso arquivo oculto, nós realmente teremos que especificar isso diretamente, como podemos ver. Tudo bem, então novamente, muita utilidade e muita versatilidade que o começo fornece. Mas é claro que também temos de ter cuidado. Então removemos arquivos. Vamos em frente e voltar. Neste caso, temos um monte de pastas aqui. O que acabamos de fazer com o Remover não funcionará na pasta. Porque se tentarmos remover a pasta um vai reclamar porque é uma pasta. Então, para remover uma pasta, bem, temos que usar como o menos nossa bandeira, que fará a exclusão recursiva. E assim, dessa forma, podemos remover, neste caso, por exemplo, o usuário uma pasta. Então eu vou olhar para ele agora. Foi removido. E se você quiser remover todas as pastas, fazer removido menos r estrela. E se quisermos excluir várias pastas, então podemos fazer algo como o usuário um, sinto muito, usar uma não existe mais. Usuário 3. Então podemos mover estes ou podemos, naturalmente, apenas remover estrela, que irá remover pastas, bem como arquivos no modo recursivo e ou remover tudo o que, porque nós apenas temos uma estrela aqui e nenhuma informação extra sobre um padrão. Você pode ver se nós apertamos Enter aqui, então sim, tudo é removido. Agora você pode no início estar se perguntando, bem, por que iria querer usar o terminal para isso se eu posso apenas fazer tudo isso usando a interface gráfica Para um novamente, às vezes você pode não ter uma opção para usar um interface gráfica como se você estiver fazendo coisas em uma máquina virtual. Mas também às vezes você pode até achar que
se torna mais conveniente fazer coisas usando o terminal porque é mais preciso e você não precisa abrir outro aplicativo ou escrever algo lá, salvá-lo, procure a pasta correta. Ou às vezes é mais rápido e fácil começar a fazer as coisas no terminal. Mas, novamente, isso também leva algum tempo para se acostumar. E assim você vai descobrir isso ao longo do tempo enquanto você continuar a usá-lo mais. E em alguns casos você vai ser como, uau, eu poderia fazer isso muito mais rápido sobre o terminal e então você vai mudar para isso. E eventualmente você terá esse ritmo para si mesmo, onde o que quer que esteja fazendo, você está fazendo do jeito que é o mais rápido. Então, se você encontrar, é mais rápido criar pastas onde você apenas vai para o localizador e você cria pastas como essa, então você quer fazer isso. E se você acha que é mais rápido fazer isso sobre o terminal, então você quer fazê-lo assim. Então, é o que for, é claro, o mais confortável para você fazer você ser mais produtivo para que você não perca muito tempo tentando mover
coisas ou excluir coisas ou criar coisas novas, ou tentar para descobrir como podemos tratá-lo como um arquivo de texto em branco ou um arquivo CSV em branco ou qualquer coisa assim. Então você tem o terminal, é claro, como você pode ver aqui, torna-se muito útil para isso porque ele apenas nos permite fazer essas coisas muito rápido. E só funciona.
9. Movendo, renomeando, copiando arquivos e pastas: Tudo bem, então agora vamos dar uma olhada em como podemos mover e renomear, bem
como copiar arquivos e diretórios. Novamente, sendo conectado em uma máquina virtual. Vamos apenas obter nossos rolamentos de onde estamos atualmente, que está neste diretório aqui chamado root. E então nós vamos listar o conteúdo do arquivo, como nós também tínhamos eles e há alguns arquivos que temos de antes que ainda estamos sobrando. Então vamos continuar usando esse diretório temporário que temos. Então vamos em frente e mudar para aqui, olhando para o conteúdo, nada aqui dentro. Tudo bem, então a primeira coisa agora vamos tentar fazer, vamos apenas criar um arquivo e então vamos mover
esse arquivo para um local diferente. Então vamos usar VI para criar um arquivo, e vamos chamar essa arte de test.txt. Nós vamos apenas colocar algumas coisas aleatórias nele. E então nós vamos desistir,
salvar e dar uma olhada no nosso arquivo para que possamos ver que temos um credo aqui. E novamente, estamos neste diretório temporário aqui, e dentro do diretório aqui chamado root. Então, uh, vamos mover este arquivo de teste para um diretório diferente. Então vamos movê-lo para o diretório deste usuário aqui. Não para fazer isso, mas temos que fazer é vamos tomar, mover este test.txt. E então vamos subir uma pasta e
vamos para o diretório deste usuário aqui. Então, se
apertarmos Enter, listamos o conteúdo desta pasta, nada aqui. Se voltarmos e entrarmos em nossa pasta de usuários, vamos dar uma olhada. Então aqui temos este test.txt que inicialmente criamos aqui. E usando o comando move, fomos capazes de movê-lo entre diferentes diretórios. Agora, se quisermos renomear um arquivo, você realmente usa o mesmo comando Mover. E nós vamos mover,
vamos mover o test.txt e, em seguida, qualquer novo nome que queremos dar a ele. Então vamos chamar este novo nome de arquivo ponto TXT. O que vamos fazer agora é mover este
arquivo test.txt e renomeá-lo para este novo nome de arquivo sublinhado ponto TXT. Então, mesmo que estejamos usando o comando move, porque estamos movendo de arquivo para arquivo. Nós não estamos realmente alterando sua localização no diretório, mas em vez disso estamos fazendo uma renomeação. Então, se olharmos para o conteúdo agora, podemos ver que antes de termos este test.txt, mas agora em vez disso temos este novo arquivo sublinhado chamado x dot TXT. Então vamos criar mais um diretório aqui. Vamos chamar esse usuário um. E se quisermos, podemos, claro, mover nosso novo arquivo para este diretório de usuário. E podemos ver que foi movido para lá. Então você pode ver. E vamos apenas mover isso de volta agora, subindo um diretório e voltando. E aqui podemos ver, tudo bem, então nosso arquivo está aqui. Agora podemos realmente fazer uma movimentação e renomear ao mesmo tempo. Então, para fazer isso, vamos usar novamente o comando Move. Nós vamos mover o nosso novo nome de arquivo TXT para o User um diretório neste caso. Mas novamente, é claro que podemos ir e voltar e para qualquer diretório que possamos usar caminhos absolutos ou relativos, todas as coisas que aprendemos antes. Mas agora vamos colocar isso no diretório do usuário um aqui. Mas não queremos apenas movê-lo, também
queremos renomeá-lo ao mesmo tempo. Então vamos dar-lhe outro nome, que vai ser outro novo nome de arquivo, dot TXT. E se olharmos para o conteúdo agora, não
temos mais este novo nome de arquivo sublinhado ponto TXT. E se entrarmos na pasta Usuário 1, que anteriormente foi aberta, agora contém esse arquivo renomeado. Então podemos ver aqui que somos capazes de usar o comando Mover tanto
para mover como para renomear, dependendo se colocarmos o destino final para ser um nome de arquivo especificamente ou não. Então essa é uma maneira muito legal de
mover as coisas e também simplesmente mudar o nome rapidamente se você quiser. Claro, nem sempre queremos apenas mover coisas ou renomeá-las, mas às vezes também queremos fazer uma cópia e, em seguida, fazer pequenas alterações na cópia. Então vamos ver como podemos fazer isso. Para fazer uma cópia, vamos usar o comando cp. E então vamos pegar, neste caso, o arquivo que criamos aqui. E então vamos dar o nome do arquivo de destino. Então aqui podemos chamar este, por exemplo, copiado file.txt. E se pressionarmos enter e olharmos para o conteúdo, podemos ver aqui que temos nosso arquivo anterior, bem
como nosso arquivo copiado. Agora, é claro, também aqui podemos ir para locais reitórios. Então, por exemplo, indo até e apenas dando a isso um nome diferente, Vamos colocar esses backup de uma pasta, mas também fazendo uma cópia ao mesmo tempo. Então nós vamos copiar este arquivo aqui para este arquivo, mas ele vai ser localizado um diretório acima. Então, se executarmos isso e dermos uma olhada aqui, não
temos o fenil aqui. Mas se voltarmos uma pasta e olharmos para o conteúdo, podemos ver que nosso arquivo foi copiado bem
como movido para cá ou copiado e criado aqui. Agora, não podemos apenas copiar arquivos, mas também podemos fazer a mesma coisa para diretórios. E há duas maneiras diferentes de copiar diretórios. E há uma pequena diferença sintática que realmente faz uma grande diferença. Então vamos criar um segundo usuário dentro da nossa pasta de usuários aqui. Então podemos olhar para o conteúdo. Então temos nosso usuário um. Então, se nós apenas olhando para o conteúdo do nosso usuário uma pasta aqui, então nós podemos ver, tudo bem, nós temos o nosso conteúdo de arquivo aqui e está olhando para o conteúdo do nosso usuário para pasta aqui. Tudo bem, não temos nada lá dentro. Então, se agora quiséssemos copiar o conteúdo do usuário1 para o usuário, então vamos em frente e fazer cp menos braço. E vamos fazer o usuário um,
cortar e, em seguida, ponto. Agora isso vai fazer referência a todos os arquivos e arquivos ocultos e tudo o resto dentro e que vamos copiar para o Usuário 2. Então, se executarmos isso e dar uma olhada no conteúdo do user2, podemos ver agora que o conteúdo real da pasta 1 ou do usuário 1.5 e copiá-lo com um usuário dois. Enquanto que se nós, bem, vamos removê-lo primeiro. Vou aumentar meu volume por causa de todos esses barulhos que você recebe. Então, vamos remover o conteúdo do usuário para primeiro. E vamos dar uma olhada no usuário para conteúdo não são assim não temos nada atribuído. Então, se não tivéssemos este ponto aqui, e podemos ver neste caso, é a pasta que está sendo copiada. Mas muito remover o conteúdo novamente. E se nós temos o ponto aqui, então podemos ver que é o conteúdo real que está sendo copiado lá. Há uma pequena diferença sintática que na verdade, tem um grande efeito na minha opinião. Então, sim, apenas uma pequena coisa aqui para notar, você sabe, realmente copiar as coisas. Agora, além disso, às vezes você realmente deseja copiar o conteúdo de uma máquina para outra, em vez de apenas dentro da mesma máquina. Então, por exemplo, digamos que temos uma pasta em nossa máquina local e queremos colocá-la nesta máquina aqui. Como podemos fazer isso? Bem, ou é apenas sair da conexão que temos aqui primeiro. E então vamos criar uma queda aqui. E então vamos copiá-lo para esta outra máquina, para a nossa máquina remota. Então, apenas olhando para o conteúdo aqui, temos códigos diferentes ou chaves diferentes. Basicamente, eu não vou criar algo aqui. Eu vou apenas ir, vamos olhar para o nosso diretório de trabalho atual. Tudo bem, eu vou para a área de trabalho. E aqui eu vou fazer um diretório temporário. Copie HDR. E eu vou mudar para esse diretório. E daqui eu vou realmente criar meu arquivo temporário. Então teste arquivo para copy.txt. E então aqui eu vou colocar o conteúdo de teste para copiar e salvar e sair. Então, se olharmos para o conteúdo do nosso arquivo, tudo bem, então temos isso. Agora queremos copiar isso para a máquina virtual. Então, se voltarmos, notamos antes quando fizemos o SSH, temos o endereço aqui. Então o que vamos fazer para copiar é que vamos usar uma coisa muito semelhante. Mas ao invés de fazer SSH, eu vou realmente fazer SCP, que é basicamente como o comando copy. Mas neste caso, na verdade, repassando a conexão que temos e transferindo-a para outra máquina. Agora a sintaxe que temos aqui, eu ainda vou usar este vôo menos i porque eu preciso especificar o meu token exato. Mas se você só tem um, então você provavelmente não vai precisar disso. Mas eu vou dar o caminho completo aqui também. Então eu vou pegar isso e colocar isso na frente aqui para que ele tenha a referência chave correta que ele precisa. Agora, o que precisamos colocar aqui é o que queremos copiar, bem
como para onde queremos copiá-lo. Então, neste caso, eu quero copiar o arquivo de teste para copiar que está no meu diretório atual para esta máquina remota. Então a primeira coisa que eu vou colocar aqui é o arquivo real que eu quero copiar. E então eu vou ter o destino, que vai ser o usuário. E então temos isso no símbolo e , em seguida, o endereço real de onde queremos copiá-lo para. E então precisamos de dois pontos, e então queremos colocar o caminho de destino aqui. Então, por exemplo, se você quiser copiá-lo para a pasta User 1, então podemos lembrar de cima que nosso usuário uma pasta estava contida dentro dos usuários e que estava tipo de contido dentro da pasta raiz. E fizemos a impressão do diretório de trabalho mais cedo. Então mais uma vez vamos usar este comando SCP. E eu só vou usar o F menos como aqui para especificar essas chaves exatas que eu preciso usar para esta máquina. Desde que eu tinha várias chaves, então o conteúdo que eu quero copiar e o destino para o qual eu quero copiá-lo. Então, apertando Enter, ele vai me pedir minha senha, que eu vou colocar. Agora copiamos o conteúdo. E agora vou voltar para SSH. E aqui estão apenas precisa atualizar uma vez que eu mudei os diretórios agora e certificando-se que eu dar o caminho correto, indo para voltar para a nossa máquina e olhando para o nosso diretório atual. Então copiamos para os usuários e para o usuário. Então aqui devemos agora encontrar este arquivo de texto para copiar porque nós movê-lo. E podemos ver aqui mesmo. Então, conseguimos mover o conteúdo deste virtual,
ou desculpe, da nossa máquina para a máquina virtual usando este comando do SEP. Agora, é claro, também podemos ir na outra direção. Digamos que queremos copiar este arquivo da máquina virtual para a nossa máquina local. Então eu vou voltar para a minha máquina local, o que eu acabei de fazer saindo da conexão aqui. Observe que ainda estou neste diretório de cópia temporária que criei na minha área de trabalho. E então eu vou usar o mesmo comando scp. Vou certificar-me de que preciso especificar a localização da chave real que eu quero usar. E agora o arquivo que eu quero copiar está realmente localizado nesta máquina remota. Então primeiro eu preciso fornecer a localização do arquivo, que primeiro requer que eu especifique o endereço que eu vou colocar dois pontos porque eu quero especificar o endereço nesta máquina. E ele vai estar no diretório raiz e os usuários no usuário um. E aqui o arquivo que eu quero copiar é este aqui. E o local que eu quero copiá-lo também é apenas o atual, que vai ser apenas um ponto. Essa é a abreviação que podemos dar por ela. Então, se apertarmos Enter, vamos copiar o conteúdo da máquina remota para a nossa atual. E assim podemos ver que somos capazes de transferir dados entre uma máquina e outra. Desde que conheçamos o usuário, bem como o endereço da máquina, então podemos copiá-lo da nossa máquina atual para lá. Ou podemos copiá-lo daquela máquina aqui. Apenas certificando-se de que nós, naturalmente, usar a mesma sintaxe que temos aqui para SSH na máquina, modo que temos o usuário real do que o símbolo at e o endereço da máquina. E então podemos usar o cólon. E a partir daí podemos especificar a localização do arquivo que queremos copiar. Se estamos copiando da máquina remota, ou se você deseja copiar para ela, especificamos o local onde queremos que ela seja salva.
10. Variáveis do ambiente: Tudo bem, então nesta lição vamos dar uma olhada em variáveis de ambiente. Agora variáveis de ambiente são agradáveis porque podemos configurá-los em nosso ambiente atual. E então, quando executamos código, podemos realmente referenciar variáveis de ambiente. Se estamos procurando por eles em código Python real que escrevemos. Ou mesmo se alguém nos der um pedaço de código diferente e nós só queremos executá-lo nas variáveis de ambiente de referência. Então podemos definir estes. Então, primeiro, vamos dar uma olhada em como definir variáveis de ambiente individuais. E a maneira que podemos fazer isso é usar essa palavra-chave export. Então vamos fazer exportação e, em seguida, vamos
ter o nome da variável de ambiente que queremos definir. Agora, é uma boa prática quando você está definindo variáveis de ambiente para torná-las todas maiúsculas. Então, por exemplo, digamos que queremos ter a nossa variável de ambiente um. E então vamos colocar o sinal de igual aqui. E então nós vamos apenas colocar o conteúdo que queremos que aconteça nesta variável de ambiente. Então você não precisa colocar aspas aqui. Se for uma coisa simples. Por exemplo, se você só quer colocá-lo aqui, Olá. Acho que tive um erro de digitação aqui. Vamos colocar um ponto de exclamação em vez de um. Então vamos tentar isso mais uma vez. Lá vamos nós. Então, se bem não, nós vamos aprender a próxima coisa que vai ser
olhar para o conteúdo acima variáveis de ambiente. Então podemos fazer isso usando o comando echo. E então para imprimir o conteúdo, vamos colocar um símbolo de dólar, e então vamos ter a variável de ambiente doméstico 1. E isso realmente vai imprimir o conteúdo. Então podemos ver aqui, fomos capazes de salvar o valor Olá em nossa variável de ambiente. Mas, claro, se tivermos coisas mais complicadas como esta, então só queremos usar aspas porque é mais fácil. E então, se apenas imprimir o conteúdo, podemos ver que nossa variável de ambiente agora tem o valor aqui, Hello World. Agora podemos, naturalmente, definir várias variáveis de ambiente fazendo,
por exemplo, se quisermos encontrar o segundo, podemos definir, por exemplo, a localização de um executável Python que queremos enviar apenas para ser, você sabe, qualquer arquivo Python dot py. E, em seguida, se olharmos para o conteúdo da variável de ambiente executável Python, podemos ver aqui que ele é referenciado como este arquivo. E assim, neste caso, é meio legal porque permite que você defina variáveis em outro lugar. E então basicamente você pode, quando você está realmente, você sabe, como uma coisa executando, você pode olhar para a variável de ambiente. E neste caso, por exemplo, eu posso realmente definir de outro lugar o que, qual código exatamente eu quero executar. E então eu só li aquela variável de ambiente e então eles podem usá-la. Portanto, há muitos casos de uso agradáveis para variáveis de ambiente. E geralmente é uma boa prática quando você está movendo coisas para um ambiente de produção para usar variáveis de ambiente. E é provável que quando você está lidando com as equipes de engenharia e elas tenham muitas variáveis de ambiente porque torna muito mais fácil ter controle e ter uma visão geral do que está definido. Onde, por exemplo, se você tiver endpoints internos são APIs internas que você está usando. Se o endereço é uma mudança e você está passando essas variáveis de ambiente, é muito fácil atualizá-las porque você apenas olha a configuração do ambiente e você apenas altera-a lá. Em qualquer lugar no código onde você está usando esse endpoint, você está apenas puxando de uma variável de ambiente. E assim, quando você alterá-lo na especificação de entrada, todo o resto tipo de atualiza automaticamente e usa essa nova referência. E assim variáveis de ambiente e muito agradável e eles são muito comuns de usar porque eles fornecem muita flexibilidade para mudanças que podem acontecer. Outro tipo comum de variável de ambiente, por exemplo, seria definir algum tipo de local de salvamento. E então aqui você pode colocar o caminho que você deseja salvar um 2, que poderia, por exemplo, ser
apenas como um arquivo local. Mas também se você está salvando coisas em um banco de dados específico, então você pode ter V nada nesse caso, provavelmente ser mais como um nome de banco de dados, que seria como tabela de teste em. Então você pode ter algo como o serviço de banco de dados, que poderia, por exemplo, ser como seu endereço IP ou qualquer outra coisa. E então você pode ter a parte do banco de dados, que é qualquer coisa. E então essas coisas mudam, então você pode apenas atualizar as variáveis de ambiente. Mas porque você está usando variáveis de ambiente, então o código vai tipo de continuar funcionando e ele vai realmente começar a usar esses novos locais porque ele apenas lê essas variáveis de ambiente. Então, vamos se tornar muito agradável e muito útil. E é provável que ao longo do tempo você começará a
usar variáveis de ambiente são pessoas que
lhe darão ou mostrarão variáveis de ambiente, mesmo que ele não esteja fazendo isso imediatamente no início, é apenas algo bom estar ciente de, você sabe, que essas coisas geralmente isso e
isso é como você pode consultá-los e acessá-los. Porque com o tempo você provavelmente começará a usá-los cada vez mais. Agora, outra coisa muito comum a ter na verdade é arquivos de ambiente. E então criamos algo semelhante que vimos antes, mas vamos dar outra olhada nisso. Indo para criar um arquivo oculto que vamos chamar ponto n local. E aqui, vamos definir variáveis de ambiente específicas. Por exemplo, vamos definir o local
Salvar como Temp,
pasta, caminho um, qualquer que seja. E, em seguida, vamos definir o nome do banco de dados como tabela de destino. E então vamos definir o usuário do banco de dados, por exemplo, como Postgres. E então você pode ter o serviço de banco de dados ou qualquer nome que você quer dar a ele como algum tipo de endereço IP ou o que quer que seja. E assim você pode realmente definir variáveis de ambiente em um arquivo. Então, se quisermos olhar para o conteúdo e logotipo, podemos ver aqui temos basicamente esta declaração de exportação quando ele várias vezes. Agora, agora mesmo, se quisermos olhar para, por exemplo, essa variável de ambiente, ela realmente não vai ser definida porque nós ainda não dissemos isso. Mas podemos realmente fonte de um arquivo para obter todas as variáveis de ambiente podem figurar. E a maneira que podemos fazer isso é usando o comando source. E então nós fornecemos o arquivo que realmente define todas essas variáveis de ambiente. Então podemos comandar isso. E então agora esse valor
, bem como todos os outros que definimos aqui, serão definidos. Agora, isso é realmente útil porque você provavelmente
terá vários arquivos de ambiente diferentes. Então você vai ter um arquivo local. Talvez você tenha um arquivo de teste onde não sabemos se o serviço de banco de dados será seu endereço de teste. E tanto faz, todas as outras coisas também. Vamos sair daqui. E então você também pode ter um ambiente de produção onde aqui novamente, você vai ter v serviço DB sendo algum endereço de produção. Tudo bem, então a razão que isso é bom se olharmos para o conteúdo aqui, é olhar para os arquivos escondidos, é que temos esses arquivos de ambiente diferentes. Então, quando estamos fazendo testes, primeiro, queremos testar localmente para ter certeza de que nosso código está funcionando para que
possamos apenas obter todo o ambiente local. Então, quando pensamos que é, você sabe, tudo está funcionando corretamente e queremos começar a testar em um ambiente de preparo. Podemos apenas obter o ambiente de teste e os arquivos do ambiente. E então vamos executar o mesmo código,
mas todos os locais, por exemplo, como locais de banco de dados, locais arquivos, locais de salvamento, todas essas coisas, você sabe, endpoint
interno Endereços, que seja. Todos eles serão atualizados para indicar endereços de teste. E só precisamos configurá-los uma vez neste arquivo de ambiente. E então nós também podemos colocá-los para atrizes de produção. Agora, normalmente você não vai carregar seus arquivos de ambiente para o GitHub. Veja definitivamente não quero fazer isso, mesmo por sua vez vai obter hubs ou obter laboratórios. Você pode, mas talvez você queira provavelmente evitar porque eles vão ser outros locais novamente, onde essas variáveis de ambiente serão definidas. Mas, no entanto, isso pelo menos dá a
você meio que localmente, você pode mudar rapidamente ambientes diferentes apenas por exemplo, se você quiser fazer alguns testes locais, você vai criar o ambiente local. E se você quiser testar na preparação, então você vai mudar para o ambiente de preparação. E se você quiser, então, você sabe, se você tem que fazer algo na produção de sua máquina local, que é raro, mas às vezes você precisa, você pode obter origem para o ambiente de produção. Então, dessa forma, ele oferece um controle muito fácil para alternar entre diferentes ambientes.
11. : Tudo bem, então nesta lição vamos dar uma olhada em algumas técnicas legais chamadas tubulação e redirecionamento. E a primeira coisa que realmente vamos fazer é aprender um novo comando, que é chamado de História. E isso só nos permite ver o histórico dos comandos que fizemos. E então isso é muito bom porque às vezes você pode ter como conectado a um servidor e você esqueceu seu endereço ou algo assim. Então, em vez de tentar encontrá-lo em todos os lugares, você apenas digita o histórico e, em seguida, você rola ao redor até encontrar talvez o comando SSH ou algo assim e eles podem simplesmente obtê-lo muito rapidamente. Ou se você estava fazendo algo, você sabe, semana passada e ele esqueceu, você só olha para o histórico dos comandos que você fez e você pode ver a ordem exata em que você fez as coisas. Então isso se torna muito, muito útil. Agora, da história, nós realmente às vezes não queremos olhar para toda a história, mas sim olhar para coisas específicas. Então, por exemplo, digamos que queremos encontrar a última vez que obtivemos e arquivo de ambiente. Agora, neste caso, nós teríamos que olhar para a história e nós temos que passar e então nós podemos encontrá-lo aqui apenas olhando. Mas há uma maneira mais fácil de fazer isso usando algo chamado tubulação. Então o que é legal sobre Linux é que ele lá, a maneira que ele é construído é que você pode usar essas coisas chamadas pius, que permitem que você tome a saída de um comando como a entrada de outra coisa. Então eu só fui em frente e reiniciá-lo, minha conexão. Então temos nossa história aqui. Digamos que queremos procurar especificamente a fonte da palavra-chave. E podemos assumir nosso comando de história. E agora queremos pesquisar a saída. Então, para obter acesso à saída, tudo o que temos a fazer é usar esta linha vertical. E então podemos usar um próximo comando que irá usar a saída do comando anterior como a entrada. Agora, o comando que usamos para procurar é chamado grep. E então podemos usar um espaço aqui, e então podemos colocar na palavra que queremos procurar. Então, por exemplo, se fizermos isso, podemos ver aqui agora que nossa história foi filtrada. Procure especificamente essas aparências de fonte. Agora podemos, naturalmente, também colocar aspas por aqui. Se temos coisas mais complicadas, como queríamos fazer isso, então podemos ver que somos capazes de procurar conexões. Considerando que se não o tivéssemos, então, claro, neste caso, não funcionaria porque o comando não o aceita. Mas vimos em outros lugares quando criamos diretórios, por exemplo, que só executariam duas coisas separadas. Então, é claro, podemos usar as aspas aqui de coisas mais complexas, ou podemos usar esse caractere de escape como também aprendemos antes. Agora, um comando de carro grep aqui é realmente também sensível a maiúsculas e minúsculas como podemos ver. Então, se eu tiver uma ortografia errada neste caso, S
sensível a maiúsculas e minúsculas, então não vai encontrá-lo. Então há um vôo extra que podemos colocar aqui, que é a bandeira menos f, que basicamente torna este caso insensível, como podemos ver aqui. Mas o objetivo de tudo isso na verdade era olhar para, bem, todo o comando, porque ele realmente deixa esse comando muito, porque é muito fácil voltar e olhar para as coisas e ver o que você fez antes apenas olhando para a história. Mas também, em seguida, apenas usando esta linha vertical aqui para nos permitir pegar a saída deste, por exemplo, e alimentá-lo como entrada aqui. Agora há muitas coisas diferentes que você pode fazer com pipes e Linux que não vamos entrar. E há, na verdade, você pode construir um monte de trabalhos bastante eficientes que podem fazer boas quantidades de processamento de dados apenas usando pipes Linux. Mas não vamos entrar nisso porque, bem, isso é um buraco de coelho completamente diferente. E há um monte de coisas legais que podemos fazer com scripts Python de qualquer maneira, e muitas dessas coisas que também podemos fazer em scripts Python. Mas de qualquer maneira, apenas esteja ciente de que a tubulação é uma dessas coisas realmente legais que você tem no Linux, o que permite muita flexibilidade. E neste caso, eu realmente gosto porque é apenas uma maneira tão fácil de pesquisar nosso histórico de comandos. E por isso podemos muito facilmente, você sabe, como nos orientar se eles se perderem ou se nos
esquecermos de algo, podemos encontrar rapidamente as referências novamente. Então, esse é o básico da tubulação. Claro, não vamos olhar para todas as maneiras diferentes que podemos fazer tubulações, mas essa é a idéia. Agora também há algo legal chamado redirecionamento. Podemos redirecionar o conteúdo que normalmente vai para esta saída padrão aqui em vez de um arquivo. Então vamos dar uma olhada em nossa localização atual. Então vamos em frente e apenas trocou para esta pasta temporária. Não há nada aqui. Então o que vamos fazer é executar o mesmo comando histórico. Mas ao invés de ter o conteúdo como eles estão sendo impressos em nossa saída padrão, vamos redirecioná-los para um arquivo. Agora, a maneira que podemos fazer isso é apenas usando este símbolo maior que aqui. Então vamos redirecioná-los para o, por exemplo, teste output.txt. E se apertarmos Enter, vemos agora que não temos nada impresso na tela. Mas se olharmos para o conteúdo do arquivo ou se olharmos para o conteúdo do nosso diretório, vemos aqui este novo arquivo foi criado. E se olharmos para o conteúdo deste arquivo, podemos ver aqui que é a saída exata que temos deste comando aqui em cima. Portanto, a tubulação e o redirecionamento podem ser extremamente úteis porque é uma maneira tão agradável de organizar rapidamente as coisas. tubulação neste caso com o histórico e o comando grep para pesquisar apenas muito rapidamente permite que você goste de encontrar coisas antigas que você fez. E redirecionar novamente apenas poupa um monte de problemas se você
tiver algo e então você talvez pense que deseja pegá-lo e copiar colado, criar um novo arquivo, copiar colá-lo lá e salvá-lo. Este redirecionamento só torna todo esse processo muito mais fácil.
12. Super User e executando scripts de Pyton: Tudo bem, então nesta lição nós vamos dar uma olhada em como podemos executar scripts Python a partir da linha de comando, bem
como fazer alguma instalação básica de pacotes para apenas ter certeza de que podemos começar a executar esses scripts, bem
como olhando para algumas coisas de permissão. Então, primeiro as coisas, às vezes isso provavelmente já estará disponível em sua máquina local. Se você quiser executar Python sobre o terminal, seria apenas capaz de digitar em Python ou Python 3 dependendo de quantas versões Python você tem instalado. E isso vai realmente executar um interpretador Python. Mas se tentarmos isso em nossa máquina virtual aqui, provavelmente não funcionará nesse caso. Então, neste caso, por exemplo, ele não foi capaz de encontrar o comando Python. Mas há um aqui, por exemplo, o Python 3. Então, como sabemos se isso vai funcionar ou não, ou como assim? Como podemos instalar Python? Bem, quando temos esses comandos que podemos executar sobre o terminal, então podemos realmente usar uma palavra-chave chamada que. Então nós digitamos em que e, em seguida, o comando que queremos executar, por exemplo, neste caso, queremos executar o Python. Então, se existir
, nos dirá o local. Mas neste caso, Python realmente não existe. Então vamos em frente e olhar para como podemos ir e instalar Python para que possamos usá-lo. Então, para fazer isso, primeiro, precisamos entender um pouco sobre privilégios. Agora, há uma coisa no Linux chamada superusuário, que basicamente dá a você todas as permissões que você precisa para basicamente fazer qualquer coisa. Então, você quer ter cuidado com isso, e é provável que faça isso mais tarde se você estiver pesquisando comandos ou algo para configurar algo no terminal. Muitas vezes você vai ver como sudo, que tão S-U-D-O, escrito assim. Então o que isso significa é superusuário fazer. E neste caso, é como executá-lo como administrador. Então, indo com os privilégios mais altos, agora isso pode ser bom porque você pode instalar um monte de coisas e você passar por coisas como erros de permissão. Mas, ao mesmo tempo, você também, é claro, quer ter cuidado porque você está basicamente executando tudo com os mais altos privilégios. E você só está dizendo, você sabe, o que quer que eu esteja fazendo, eu meio que sei o que estou fazendo. Então execute este comando. Mas em alguns casos, por exemplo, quando você está instalando pacotes, isso é realmente necessário. Portanto, apenas esteja ciente de que este comando existe e basicamente faz você executá-lo como o superusuário ou como um tipo de administrador. E para isso, você sabe, você tem todos os privilégios e todos os comandos, mesmo aqueles que podem doer, podem ser executados. Então, sim, isso é apenas um pouco sobre pseudo, mas, é claro que nos dá esses privilégios que precisamos, por exemplo, para instalar coisas em nossa máquina. Então, se quisermos instalar
o Python, a primeira coisa que vamos querer fazer é geralmente recomendada para fazer sudo apt update. Portanto, o APT é para a ferramenta de empacotamento avançada apenas nos permite gerenciar pacotes aqui. E atualização é uma espécie de coisa padrão apenas para que a máquina esteja atualizada e seja a versão mais atualizada. E então nós podemos realmente adicionar um vôo menos y aqui, o que significa Auto, dizer sim para as coisas quando somos solicitados como Certeza que queremos atualizar e coisas assim. E então você tem que pressionar Y e entrar. Então, quando recebermos esses prompts, se você colocar a bandeira menos y, ele automaticamente dirá sim a esses prompts. Então, se acabarmos com essa execução final, então você verá aqui que ele está apenas executando atualizações e é apenas, você sabe, levando nosso computador para a versão mais atualizada. E então, se quisermos instalar Python, podemos usar sudo apt install Python. E eu vou instalar o Python 3.7 por exemplo, porque eu realmente gostei desta versão do Python. E eu vou apertar Enter. Então, agora,
se tentarmos procurar o pacote Python , de fato, neste caso ainda não vamos encontrá-lo. Mas isso é porque ele realmente não foi salvo sob o nome Python, mas em vez disso ele estava sob Python 3. E provavelmente é provável que já esteja pré-instalado no computador. Mas em alguns casos, você sabe, você pode não ter Python pré-instalado. E então esta é uma das maneiras que você pode obtê-lo. E então, assim como tínhamos quando estávamos realmente passando
pelo caminho da seção Python no início. Então você pode, talvez você às vezes tenha Python como o padrão. Às vezes você tem Python 3, às vezes você tem um Python especificamente 3.7 m. Então esse tipo de pode depender. Então, se não temos Python na máquina, então é assim que podemos instalá-lo. Então, se quisermos executar o nosso interpretador Python, podemos apenas digitar Python 3. E então vamos realmente começar este interpretador Python aqui que podemos usar para nós, que você pode realmente reconhecer. Neste caso, é realmente Python 3.8.5, que já está pré-instalado na máquina. Mas você sabe, se você não tem uma versão do Python e você instala o Python 3.7, então seria a versão do Python 3.7. Mas, neste caso, é realmente pré-instalado sob a palavra-chave Python 3. Então é por isso que vemos esta versão aqui. Mas, de qualquer forma, neste caso, podemos apenas digitar código Python. Podemos atribuir variáveis. Podemos imprimir variáveis, se quiser. E então, se quisermos sair de volta, que é apenas digitar exit open, close, e isso nos levará de volta à linha de comando. Mas é claro, você sabe, se você está escrevendo código Python deve no momento ele só quer escrevê-lo em um arquivo em vez de usar o intérprete de linha de comando porque,
na minha opinião, não é muito divertido e pode ser bem frustrante na verdade, para escrever aqui. Então, na maioria das vezes, e isso é o que vamos olhar agora, é que podemos realmente usar isso para executar scripts Python através do terminal. Então vamos em frente e criar um arquivo Python. E eu vou chamar isso de teste de ponto py. Vamos criá-lo usando o comando VI. E eu vou colocar um comando Python aqui. Então eu só vou dizer imprimir, olá, mundo. E vamos salvar e sair. E agora se você quiser executar o script sobre o terminal, e podemos fazer Python 3. E então podemos colocar o arquivo que queremos executar aqui depois. Pressione Enter, e então você verá aqui irá executar o script Python. Neste caso, novamente, é um arquivo simples de executar. Mas mesmo que você tenha um código mais complicado e queira executá-lo sobre o terminale, que em alguns casos você faz se você enviá-lo para a máquina remota, você não terá um editor. Mas neste caso, você pode facilmente executar esses scripts sobre a terminologia apenas usando o comando Python, que é algo que eu faço um pouco frequentemente e é bastante conveniente. E mesmo em minha máquina local às vezes eu
preferiria executá-lo sobre o terminal em vez de executá-lo
no intérprete porque ele me permite simular melhor como ele será executado quando ele está realmente em uma máquina remota em outro lugar .
13. Executáveis e permissões de modificação: Tudo bem, então nesta lição vamos dar uma olhada em como podemos executar executáveis através do terminal. Porque às vezes você também estará obtendo arquivos executáveis. Ou você mesmo os criará ou outros dariam para você. E nós não vamos entrar em nenhuma profundidade sobre scripts shell. Mas há casos em que você tem apenas um pedaço de código ou apenas um comando que você deseja executar sobre a linha de comando. E pode ficar um pouco longo. Então, em vez disso você apenas colocá-lo em um arquivo shell e, em seguida você pode executá-lo como um executável e que nós não temos que digitá-lo em ou em outros casos, você pode ser entregue como executáveis Shell. Então, só dando uma olhada em como podemos fazer isso. Então a primeira coisa que vamos fazer é eu realmente vou mostrar a vocês um pequeno truque sobre como podemos encadear diferentes CMS juntos porque eu
vou colocar isso no arquivo shell só porque é interessante. Então, por exemplo, se quisermos imprimir nosso diretório de trabalho, e então se quisermos listar o conteúdo do diretório atual, podemos fazer isso usando dois comandos, mas se
quisermos, podemos realmente executá-los diretamente um após o outro usando este símbolo comercial duplo. Então nós vamos fazer primeiro eles imprimir comando diretório de trabalho que vamos espaço estes dois e símbolos. Então vamos fazer Ls menos l, que será nosso segundo comando. E então se executarmos isso, então podemos ver primeiro que estamos executando este aqui, e agora estamos executando o segundo. E se quisermos, podemos continuar encadeando comandos juntos assim. Então, agora vamos olhar para como podemos
colocar isso no arquivo Shell e como podemos executar esses comandos. Então vamos criar um teste deve ser final. Nós só vamos ter a extensão SH ponto. Só vai ser o nosso executável shell. Vamos bater em Enter e apenas afirmar. Agora a primeira coisa que vamos inserir, na verdade
vai ser um símbolo de libra, ponto de exclamação. E, em seguida, barra para a frente. Vamos fazer Bin Bash. Normalmente, quando você tem esses símbolos de libra, significa comentários. Mas especificamente se tivermos este símbolo de libra ponto de exclamação, e então nós fornecemos um caminho. Então isso significa que este vai ser o intérprete que vamos usar para executar esta largura de arquivo shell. E nós vamos ouvir apontar para o intérprete bash e esta é a sua localização padrão. Agora realmente você não precisa se lembrar muito sobre isso. E se você quiser procurar, então eu recomendo que pesquise no Google. Mas é provável que em alguns casos você só verá isso
no topo de um script shell e você estará se perguntando lenços lá. E, às vezes, seu script shell, dependendo de onde você executá-lo ou como executá-lo, pode realmente não ser executado. E então, nesse caso, apenas colocando este ponto de exclamação de libra e, em seguida, barra barra
barra barra barra barra bash na parte superior vai ajudar a fazê-lo funcionar. Isto novamente, apenas significa que estamos usando o intérprete bash para, bem, usar isso para executar o script. Tudo bem, então agora podemos começar a colocar nossos comandos aqui. Então, por exemplo, vamos em frente e fazer o que acabamos de fazer na linha de comando, mas agora apenas neste arquivo executável. Então vamos colocar aqui primeiro o diretório de trabalho de impressão. E então nós vamos ter esses dois n símbolos. E então vamos listar o conteúdo do diretório atual. E vamos salvar e sair. E agora, se quisermos executar este executável, vamos fazer ponto para frente barra. Então lembre-se que este ponto aqui faz referência ao diretório atual. Então estamos dizendo em nosso diretório atual, vamos executar este arquivo SH ponto de teste. E então, se quisermos executar esses arquivos, nós realmente temos que ter essa definição na frente, que tipo de aponta para onde o arquivo realmente está. Caso contrário, não estaria a executá-lo. Então, sim, apenas como uma coisa importante aqui que mesmo se você estiver no mesmo diretório, você ainda tem que fazer ponto para frente barra. E novamente, o ponto apenas faz referência à localização atual. Então, se você se lembra de mais cedo quem fez ponto-ponto significa o diretório um para cima, enquanto as filhas apenas tipo CurrentLocation. E então nós vamos ter a barra direta, que vai então indicar que neste caso queremos, porque ele tem o ponto como arquivo h no final. Neste caso, queremos executar este executável. Então, se eu apertar run, nós realmente vamos encontrar um erro porque mesmo que nós fizemos isso um arquivo de prateleira e nós meio que escrevemos no caminho de um executável. Atualmente, ele não tem a permissão necessária para ser executado como um executável. Então vamos em frente e listar o conteúdo. Então podemos ver aqui em nosso arquivo shell, se olharmos para a esquerda aqui, estas são realmente as permissões disponíveis. Então você pode ver aqui nós vemos alguns nossos e w's e eles estão meio que se repetindo. Então o que isso significa é que estes são diferentes e grupos de usuários basicamente. E para cada um deles eles têm uma leitura e uma gravação, uma permissão executável. Então, os três primeiros aqui serão a leitura, a escrita. E então, neste caso, haveria um x aqui, que podemos ver aqui. Mas neste caso, que denotamos que é executável. E isso vai ser para o grupo específico do usuário. Os próximos três aqui serão uma permissão de grupo. E então os últimos aqui serão uma outra permissão. Agora, na maior parte do tempo, realmente estes não vão ser importantes. Eu sou. E se você encontrar onde eles serão importantes, é
provável que um membro da equipe de DevOps. Ou talvez um desenvolvedor se comunique com você como nós temos permissões específicas aqui e apenas certifique-se que quando você está definindo coisas que é ou específico para
você para que talvez outras pessoas possam executá-lo ou que específico para qualquer grupo é definido para que outras pessoas não
possam fazer muito para os arquivos que você não deseja que eles façam. Então isso é realmente apenas um tipo de gerenciamento de permissões em diferentes níveis. Então, se agora queremos modificar algumas das permissões, por exemplo, vamos tirar, permissão direita deste arquivo shell para o usuário. Então, para fazer isso, vamos usar o comando CH mod, que nos permite modificar e as permissões que temos aqui ou alterar as permissões que temos. E, em seguida, vamos especificar quais permissões queremos alterar. E então vamos especificar quais arquivos queremos
alterar ou quais arquivos devem ser aplicados. Então, neste caso, se quisermos remover permissão de escrita para o usuário, então podemos fazer menos W. E então podemos colocar aqui teste ponto SH, que vai ser nosso arquivo prateleira aqui. E se apertarmos Enter e listarmos o conteúdo novamente, então podemos ver aqui que a permissão correta foi realmente removida. Então, se tentarmos entrar em nosso arquivo de prateleira aqui, e se tentarmos inserir algo, então vemos aqui vamos receber um aviso de que este é um arquivo somente leitura e basicamente não temos permissão para inserir coisas novas. E então se tentarmos salvar e então vamos receber um erro porque só temos a permissão somente leitura. Então deixe-me desligar meu volume para eu não ter esses grampos de cabelo. Então, se sairmos de lá, podemos ver que agora a permissão de gravação foi removida. Se quisermos adicionar permissão correta novamente. E podemos fazer mais w, que vai adicionar permissão certa para o usuário. E vamos aplicar isso ao arquivo Shell novamente que criamos. E assim podemos ver aqui que o primeiro grupo tem sua permissão correta novamente. E então, se entrarmos no arquivo novamente, neste caso, se pressionarmos Inserir, então veremos que já não vamos receber o aviso. Então agora, neste caso, estávamos apenas modificando as permissões para o usuário. Então, como podemos alterar as permissões para os outros grupos? Bem, vamos dar uma olhada nos outros. Então eu sei que estou usando grupo duas vezes aqui, mas realmente quando se refere às diferentes seções, grupo é tipo de queda por palavra fácil de usar. Mas isso aqui é chamado de usuários, ou o usuário. Este está aqui. Este aqui é chamado de grupo, e este aqui é chamado de outro. Então, se quisermos adicionar permissão de leitura, por exemplo, para o grupo, podemos fazer CH mod. E então nós vamos especificar eu acho, os riscos e outubro. Então vamos fazer CH mod isso. Nós vamos fazer g, que vai especificar permissões para o grupo. E nós vamos fazer mais w, que vai dar permissões certas para este grupo aqui. E então vamos colocar um nome de arquivo. E se executarmos isso e olharmos para o conteúdo, podemos ver aqui que o grupo ganhou permissões certas. Então vamos dizer que queremos remover agora, ler permissão do outro. Então podemos fazer ligação C-H e um OH especificará esta última seção aqui. E se quisermos remover a reposição, permissão de
leitura, desculpe, podemos fazer menos r. E, novamente, vamos colocar o nome do arquivo aqui. E então, se listarmos o conteúdo,
então, agora aqui nós removemos a permissão de leitura. Então, se queremos adicionar executável agora permissão especificamente para o usuário que podemos fazer CH mod u mais x ponto de teste SH, que vai ser um nome de arquivo. E assim, se olharmos para o conteúdo agora podemos ver que nosso usuário obteve permissão executável. E, na verdade, aqui agora também temos codificação de cores porque como não-executável. E assim podemos ver como um usuário para nessa seção podemos executá-lo. Então, se tentarmos isso novamente usando nossa execução para o arquivo SH ponto de teste e executamos isso. Agora nós podemos realmente executá-lo porque nós mudamos, modificamos isso para realmente também torná-lo um arquivo executável. Portanto, é provável que quando você cria um novo shell arquivos, eles não serão executáveis por padrão. Então, geralmente tudo que você terá que fazer é apenas CH mod u plus x. ou se você quiser, você pode até mesmo apenas fazer CH mod plus x, que irá adicionar permissão executável para todos como você pode ver aqui. Então, é claro, você sabe se eles são como todas as preocupações de segurança e você quer se
certificar de que todas essas permissões são separadas. E você pode apenas fazê-lo especificamente para o usuário. Mas caso contrário, se você apenas meio que executar você mesmo, ou se você está apenas colocando em algum lugar em uma máquina onde ninguém mais vai tocá-lo, você sabe, qualquer um destes pode ser usado. Agora, eu também quero mostrar outra versão que essas permissões podem ser modificadas. Então tivemos o mais x que adiciona permissão executável, ou o u mais x especificamente para o usuário, temos o menos X4 em que remove a permissão executável. Ou, por exemplo, se quisermos remover a permissão executável de todos, podemos fazer menos x aqui, então é tudo retirado. Podemos fazer mais r, que adiciona permissão de leitura, menos r, que o remove, mais w que adiciona mais permissão de gravação. E menos W que o remove. E assim, se quisermos, por exemplo, podemos tirar a permissão de leitura ou gravação do usuário. E nós também podemos tirar direito, permissão do grupo. Então agora ninguém tem permissão para escrever. E se quisermos adicionar a permissão certa para todos, então há outro vôo que podemos usar chamado um, que será para todos. Então, se fizermos um plus r e todos terão a permissão certa. Então, é apenas um tipo diferente de maneiras que você pode fazer tudo isso, for mais conveniente para você. E então eu também quero mostrar uma outra maneira como você pode especificar essas permissões, só porque você pode vê-lo às vezes. Então, em vez de especificar mais ou menos W e X e R, você também pode usar valores numéricos. Portanto, existem diferentes valores numéricos que podemos usar. Primeiro vai ser, e nós especificamos isso em seções novamente. Então este especifica para a primeira seção aqui. Em seguida, o segundo número especificará a segunda seção de três, e então o terceiro número especificará a terceira seção de três. Então, se fizermos 000 0, significa
que 0 significa que não há permissão. Então podemos ver aqui 0, nenhuma permissão para a primeira seção, que é o usuário 0, permissão para a segunda seção, que é o PRB. E 0 permissão para a terceira seção, que será a outra. Agora, se quisermos adicionar permissão executável, então esse número vai ser, esse número vai ser um. Então, por exemplo, se queremos ter permissão executável para o usuário e é isso e nenhuma permissão para qualquer outra coisa. E podemos usar isso. E veremos aqui agora que só temos permissão executável. Ou se quisermos tê-lo apenas para o grupo por qualquer motivo. E podemos tê-lo assim. E podemos ver aqui porque nós especificamos 0 no início, em
seguida, a seção de usuário também vai ter nenhuma permissão. Então, desta forma, nós tipo de definir todas as permissões usando esses valores numéricos. E apenas indo, meio que passando pelo resto. E vamos ficar com o usuário. Então, também temos a opção de definir 2, que dá permissão de gravação. Então, se olharmos para o conteúdo aqui agora temos permissão para escrever. E também podemos usar quatro, que é uma permissão de leitura. Então agora você pode estar se perguntando, ok, se eu quisesse fazer uma leitura, escrever,
ou escrever e executar o dobro ou o que for. Bem, 0 não especifica permissão. Um é executável para como escrita e para sua leitura, mas podemos realmente adicionar esses valores numéricos juntos. Então, por exemplo, se você queria escrever e ler, então escrever é dois e Redis para. Então isso significa escrever e ler. Vai ser dois mais quatro, que é seis. Podemos ver aqui. Então agora temos escrever e ler. Se você quiser fazer escrever um executável, direito, é para, executável é 1, então 2 mais 1 é 3. E se quisermos fazer, por exemplo, executável e ler, e vai ser um mais cinco executável é um, Rita para o qual podemos ver aqui. E se quisermos fazer todos eles, vai ser 1 mais 2 mais 4, que vai ser 7. digitação aqui. E certificando-se de colocar o espaço novamente. Então, podemos ver se olharmos para as permissões, então temos permissão total para a seção de usuário e tudo o resto não tem nada porque os valores aqui são 0. E então, se
quisermos, também podemos especificar isso para o grupo. Por exemplo, podemos ter algo que é um tipo de comum para ver é 7400, que tem permissão total para o usuário, permissão de
leitura para o grupo e permissão 0 para outros. Portanto, estas são duas maneiras diferentes de modificar permissões. E sei que temos andado a este tempo, mas é bom ver todas as opções diferentes, porque pessoas diferentes podem usar coisas diferentes. E então agora você está totalmente disponível como você pode modificar permissões individuais fazendo mais x ou g menos R. Ou você pode especificar tudo diretamente
usando esses valores numéricos aqui e especificando o arquivo.
14. Enviando solicitações no envio: Tudo bem, então nesta seção vamos ver como
podemos enviar solicitações usando o terminal. Agora já sabemos como fazer isso usando a biblioteca de solicitações Python. Mas vamos dar uma olhada em como podemos fazer isso no terminal. Porque às vezes você só recebe alguns
desses comandos e, em seguida, é meio fácil de reconhecer. Então, podemos usar este comando curl que nos permite enviar mensagens HTTP. Então, por exemplo, se quisermos acessar o Google https, e então vamos para google.com, então podemos digitar isso aqui e abrir. Neste caso, estamos realmente recebendo resposta de que é um redirecionamento, que é um 301, e ele foi movido para este URL. Então, se
quisermos, podemos pegar isso de novo e fazer curl. E então basta colocar o URL aqui. E então estamos apenas enviando um pedido GET para que possamos ver a resposta aqui. Só vamos limpar a tela. Agora, obviamente isso é mais útil para outras coisas. Normalmente, você usará curl para fazer testes de API. Então, por exemplo, se você quiser enviar uma solicitação GET para uma API e você pode usar curl, e você pode fazer menos get, e então você pode colocar a URL. Então, por exemplo, se
colocarmos o Google novamente, teremos a mesma resposta. Também podemos fazer outras coisas como colocar ou postar ou excluir. Então você pode simplesmente fazer curl menos, menos,
menos colocar, por exemplo,
para enviar pedidos PUT ou o post ou qualquer outra coisa. É muito bom apenas ser capaz de
testar rapidamente com uma API através do terminal. Mas é claro, como eu disse, podemos fazer a mesma coisa usando a biblioteca de solicitações em Python. Mas desta forma podemos fazê-lo diretamente sobre o terminal, que, você sabe, dependendo talvez de seus colegas e quem eles eram e como eles funcionam. Alguns de vocês podem enviar comandos curl que podem ser executados no terminal. E outros talvez apenas fazer isso como Python ou qualquer linguagem que eles estão escrevendo. Então sim, outra coisa que muitas vezes vem com APIs é enviar cabeçalho é para autorização. Então, se você quiser incluir um cabeçalho e você faz um h menos,
e então nós abrimos e fechamos parênteses aqui. E então nós temos são apenas a chave aqui. E então podemos colocar o valor. E isso só nos permite enviar parâmetros de
cabeçalho ou dados de cabeçalho juntamente com quaisquer solicitações estavam fazendo. Então, por exemplo, se quiséssemos obter solicitação para uma API, precisamos nos autenticar, então podemos fazer o menos H aqui, que vai adicionar o cabeçalho. E, em seguida, podemos fazer uma solicitação GET para qualquer que seja a API neste caso. Bem, você sabe, isso não vai fazer muito, porque estamos apenas recebendo isso do Google. Mas você pode ver aqui que dependendo do que precisamos, podemos então adicionar parâmetros de cabeçalho aqui. E se quisermos, podemos até especificar vários parâmetros de cabeçalho por apenas ter um outro sinal de
menos, menos h e ter aspas aqui. E então podemos especificar uma segunda chave, por exemplo, e outro valor, epsilon. Então, podemos fornecer informações de parâmetro de cabeçalho extra aqui. Então, se também queremos enviar dados junto com nossa solicitação, por exemplo, se estamos fazendo uma solicitação de postagem, então, e vamos apenas mudar isso para ser a URL da API. Então também podemos adicionar uma bandeira menos Theta aqui. E então aqui podemos fornecer dados adicionais. Por exemplo, se você deseja fornecer dados
JSON e temos que ter certeza de que colocamos aspas simples. E então podemos ter nossos dados JSON aqui dentro usando aspas duplas dentro. Então, por exemplo, aqui podemos fazer um. E então isso aqui vai ser o valor um. E estes são separados das coisas de cabeçalho, mas eu estou apenas usando, eu sou apenas notação geral. E, em seguida, podemos fazer aqui dados JSON para JSON valor dois. Assim, também podemos enviar dados junto com nossos pedidos, se quisermos. Como podemos ver aqui, importante é apenas ter aspas simples no fora e as aspas duplas no interior aqui. Mas para isso realmente passar, precisamos especificar como um parâmetro de cabeçalho que estamos enviando dados JSON, hum, e assim podemos fazer isso apenas adicionando outro cabeçalho, valor de cabeçalho, que tem que ter o seguinte formato, basta especificar o tipo de conteúdo que é o formato adjacente. Então, se você quiser enviar dados JSON, então você terá que se certificar de apenas especificar que você está dizendo que este é um formato adjacente. E sim, quero dizer, você também pode apenas enviar outros dados para cá, mas especificamente telefonar e certificar-se de que são interpretados como um formato JSON. E você pode adicionar isso ao arquivo de cabeçalho. Agora, novamente, isso é principalmente apenas útil porque é muito rápido para apenas testar em torno de APIs sem ter que como iniciar um interpretador Python pedidos de importação e colocar o URL lá e definir os dados lá dentro. E assim, é claro, às vezes pode ser mais rápido usando o comando curl aqui e tipo de defini-lo assim. E outras vezes pode ser mais rápido para você fazer isso em Python e apenas importar solicitações e fazê-lo lá. Claro, depende de você. Tudo o que você sente é a solução mais confortável e eficiente para você. Mas é claro, seus colegas também podem estar trabalhando de forma diferente. E assim alguns deles podem enviar comandos curl que você pode executar sobre o terminal. Além disso, só porque é uma coisa muito fácil de passar
para os outros, porque eles também podem simplesmente executar através do terminal. Considerando que se você enviar um script Python para alguém que realmente não usa Python muito, então será um pouco mais difícil para eles ou eles têm abri-lo e brincar com e coisas assim. Considerando que um comando curl é muito fácil de ler e meio botão de transferência para qualquer um, porque você pode simplesmente executá-lo sobre o terminal. Então sim, é claro, você sabe, isso depende de você,
mas é provável que em algum momento, ou você vai escrever um comando curl porque você apenas acha mais fácil testar rapidamente uma API ou colega vai enviá-lo para você e assim por diante. Então saberá como interpretá-la.