Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Skalnark/93b2133a9b5af479321c6be31d84f813 to your computer and use it in GitHub Desktop.
Save Skalnark/93b2133a9b5af479321c6be31d84f813 to your computer and use it in GitHub Desktop.

Comandos de usuário

  • r = ler; w = escrever; x = executar

  • chmod:

    • chmod +x filename

    Dá permissão de execução para todos os usuários Os outros argumentos podem ser +w e +r

    • chmod u=rwx,g=rwx,o=rwx filename

    Dá as permissões rwx para usuário, grupo e outros

    • chmod 777 filename

    Dá as permissões 7 (rwx) para usuário, grupo e outros O número para execução é 1, para escrita é 2, para leitura é 4

    As demais permissões são obtidas somando essas três, e.g. 5 é 4+1, ou seja, leitura e execução

    • Todos os comandos acima podem ter a flag -R para operar recursivamente, eg chmod -R 755 directory
  • chown:

    • chown username filename

    torna username o dono do arquivo

    • chown username directory

    torna username o dono do diretório

    • chown -R username directory

    torna username o dono do diretório e de todos os arquivos e diretórios dentro dele recursivamente

  • chgrp:

    • O mesmo que o chown, mas para grupos

Comandos do Systemctl

  • sudo systemctl start application.service

Inicia um serviço

  • sudo systemctl stop application.service

Para um serviço

  • sudo systemctl restart application.service

Reinicia um serviço

  • sudo systemctl enable application.service

Habilita o serviço a ser inicializado junto com o sistema

  • sudo systemctl disable application.service

Desabilita o serviço a ser inicializado junto com o sistema

  • sudo systemctl status application.service

Verifica o status de um serviço

Aperte q para sair

  • systemctl list-units

Exibe uma lista com os serviços atualmente ativos

Pipe e outros

  • | (barra vertical)

Direciona a saída de um programa para o próximo programa

  • &&

Operador condicional "and". Pode interromper a execução de uma sequência de comandos se o ultimo comando não foi bem sucedido

  • || (duas barras verticais)

Operador condicional "or". Executa um comando se o comando anterior não foi bem sucedido

  • ;

Executa um comando após outro, sem passar o restulado de um programa para o outro e independente de ter sido bem sucedido

  • >

Grava a saída de um programa em um arquivo

  • <

Lẽ um arquivo e passa seu conteúdo como entrada para um programa

Exemplo de uso de concatenação de programas

  • grep
    • grep -i

    Desabilita o case sensitive

    • grep -v

    Mostra resultados que não tem o padrão especificado

    • grep -w

    Busca pela exata aparição de uma palavra

    echo "blablabla" | grep -w "bla" não retornará resultados echo "bla bla bla" | grep -w "bla" retornará resultados

git log --oneline | grep -viw "merge" | grep -i sqlite | grep -i fix | grep -i timestamp

Outros comandos utilizados

  • awk

Usado para manipular textos a partir de uma sequencia de padrões

  • tail

Exibe o fim de um arquivo de texto

  • head

Exibe o começo de um arquivo de texto

  • wc -l

Conta quantas linhas tem um arquivo de texto

Programas que valem a pena ver

Shell

#!/bin/sh
echo comando1
echo comando2
echo comando3
gcc main.c -o main_executable

Definindo uma função que recebe parâmetros

#!/bin/bash

Hello () {
   echo "Hello $1"
}

for loop

#!/bin/bash
for i in {10..0};
 do
   echo "$i"
 done

while loop

#!/bin/bash
  echo "Informe o que você quiser, -1 para sair"
  read dado;
  while [ $dado != "-1" ];
  do
    echo "Você digitou $dado"
  read dado;
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment