Pesquisa de site

Comandos úteis para criar servidor de bate-papo Commandline e remover pacotes indesejados no Linux


Aqui estamos com a próxima parte das dicas e truques da linha de comando do Linux. Se você perdeu nosso post anterior sobre truques do Linux, você pode encontrá-lo aqui.

  1. 5 truques de linha de comando do Linux

Neste post apresentaremos 6 dicas de linha de comando, ou seja, criar um bate-papo de linha de comando do Linux usando o comando Netcat, realizar a adição de uma coluna dinamicamente a partir da saída de um comando, remova pacotes órfãos do Debian e CentOS, obtenha IP local e remoto da linha de comando, obtenha saída colorida no terminal e decodifique vários códigos de cores e por último, mas não menos importante, implementação de hash tags na linha de comando do Linux. Vamos verificá-los um por um.

1. Crie um servidor de bate-papo Linux Commandline

Todos nós usamos o serviço de chat há muito tempo. Conhecemos o chat do Google, Hangout, chat do Facebook, Whatsapp, Hike e vários outros aplicativos e serviços de chat integrados. Você sabia que o comando nc do Linux pode transformar sua caixa Linux em um servidor de bate-papo com apenas uma linha de comando.

O que é o comando nc no Linux e o que ele faz?

nc é a depreciação do comando netcat do Linux. O utilitário nc é frequentemente referido como canivete suíço com base no número de seus recursos integrados. É usado como ferramenta de depuração, ferramenta de investigação, leitura e gravação em conexões de rede usando TCP/UDP, verificação direta/reversa de DNS.

É usado com destaque para varredura de portas, transferência de arquivos, backdoor e escuta de portas. nc tem a capacidade de usar qualquer porta local não utilizada e qualquer endereço de origem de rede local.

Use o comando nc (no servidor com endereço IP: 192.168.0.7) para criar um servidor de mensagens de linha de comando instantaneamente.

nc -l -vv -p 11119

Explicação das opções de comando acima.

  1. -v : significa detalhado
  2. -vv : mais detalhado
  3. -p : O número da porta local

Você pode substituir 11119 por qualquer outro número de porta local.

Em seguida, na máquina cliente (endereço IP: 192.168.0.15), execute o seguinte comando para inicializar a sessão de bate-papo na máquina (onde o servidor de mensagens está em execução).

nc 192.168.0.7 11119

Nota: Você pode encerrar a sessão de bate-papo pressionando a tecla ctrl+c e também o nc chat é um serviço individual.

2. Como somar valores em uma coluna no Linux

Como somar os valores numéricos de uma coluna, gerada como saída de um comando, dinamicamente no terminal.

A saída do comando ‘ls -l’.

ls -l

Observe que a segunda coluna é numérica que representa o número de links simbólicos e a coluna é numérica que representa o tamanho do arquivo. Digamos que precisamos somar os valores da quinta coluna imediatamente.

Liste o conteúdo da coluna sem imprimir mais nada. Usaremos o comando ‘awk’ para fazer isso. ‘$5‘ representa a coluna.

ls -l | awk '{print $5}'

Agora use awk para imprimir a soma da saída da coluna canalizando-a.

ls -l | awk '{print $5}' | awk '{total = total + $1}END{print total}'

Como remover pacotes órfãos no Linux?

Pacotes órfãos são aqueles que são instalados como uma dependência de outro pacote e não são mais necessários quando o pacote original é removido.

Digamos que instalamos um pacote gtprogram que dependia de gtdependency. Não podemos instalar o gtprogram a menos que o gtdependency esteja instalado.

Quando removemos gtprogram ele não remove gtdependency por padrão. E se não removermos gtdependency, ele permanecerá como Pacote Orpahn sem conexão com qualquer outro pacote.

yum autoremove                [On RedHat Systems]

apt-get autoremove                [On Debian Systems]

Você deve sempre remover pacotes órfãos para manter a caixa do Linux carregada apenas com o material necessário e nada mais.

4. Como obter endereço IP local e público do servidor Linux

Para obter seu endereço IP local, execute o script abaixo.

ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d:

Você deve ter instalado o ifconfig, caso contrário, apt ou yum os pacotes necessários. Aqui estaremos canalizando a saída de ifconfig com o comando grep para encontrar a string “intel addr:”.

Sabemos que o comando ifconfig é suficiente para gerar o endereço IP local. Mas ifconfig gera muitas outras saídas e nossa preocupação aqui é gerar apenas endereços IP locais e nada mais.

ifconfig | grep "inet addr:"

Embora a saída seja mais personalizada agora, precisamos filtrar apenas nosso endereço IP local e nada mais. Para isso usaremos awk para imprimir a segunda coluna apenas canalizando-a com o script acima.

ifconfig | grep “inet addr:” | awk '{print $2}'

Fica claro na imagem acima que personalizamos muito a saída, mas ainda não é o que queremos. O endereço de loopback 127.0.0.1 ainda está presente no resultado.

Usamos o sinalizador -v com grep que imprimirá apenas as linhas que não correspondem àquela fornecida no argumento. Cada máquina tem o mesmo endereço de loopback 127.0.0.1, então use grep -v para imprimir as linhas que não possuem essa string, canalizando-as com a saída acima.

ifconfig | grep "inet addr" | awk '{print $2}' | grep -v '127.0.0.1'

Quase geramos a saída desejada, basta substituir a string (addr:) desde o início. Usaremos o comando cut para imprimir apenas a coluna dois. A coluna 1 e a coluna 2 não são separadas por tabulação e sim por (:), então precisamos usar o delimitador (-d ) canalizando a saída acima.

ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d:

Finalmente! O resultado desejado foi gerado.

5. Como colorir o terminal Linux

Você deve ter visto uma saída colorida no terminal. Além disso, você saberia ativar/desativar a saída colorida no terminal. Caso contrário, você pode seguir as etapas abaixo.

No Linux, todo usuário possui o arquivo '.bashrc', este arquivo é usado para lidar com a saída do terminal. Abra e edite este arquivo com o editor de sua preferência. Observe que este arquivo está oculto (o ponto no início do arquivo significa oculto).

vi /home/$USER/.bashrc

Certifique-se de que as seguintes linhas abaixo não estejam comentadas. ou seja, não começa com #.

if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dirc$
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

Uma vez feito! Salvar e sair. Para que as alterações tenham efeito, saia e faça login novamente.

Agora você verá que os arquivos e pastas estão listados em várias cores com base no tipo de arquivo. Para decodificar o código de cores, execute o comando abaixo.

dircolors -p

Como a saída é muito longa, vamos canalizar a saída com menos comando para obtermos a saída uma tela por vez.

dircolors -p | less

6. Como fazer hash de comandos e scripts do Linux

Estamos usando hash tags no Twitter, Facebook e Google Plus (podem ser em outros lugares, não percebi). Essas hash tags tornam mais fácil para outras pessoas pesquisar uma hash tag. Muito poucos sabem que podemos usar hash tag na linha de comando do Linux.

Já sabemos que # nos arquivos de configuração e na maioria das linguagens de programação é tratado como linha de comentário e é excluído da execução.

Execute um comando e crie uma hash tag do comando para que possamos encontrá-lo mais tarde. Digamos que temos um script longo que foi executado no ponto 4 acima. Agora crie uma hash tag para isso. Sabemos que ifconfig pode ser executado pelo usuário sudo ou root, portanto, agindo como root.

ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d: #myip

O script acima foi marcado com hash com ‘myip‘. Agora procure a hash tag em reverse-i-serach (pressione ctrl+r), no terminal e digite ‘myip‘. Você também pode executá-lo a partir daí.

Você pode criar quantas hash tags para cada comando e encontrá-lo mais tarde usando reverse-i-search.

É tudo por agora. Temos trabalhado muito para produzir conteúdos interessantes e informativos para você. O que você acha de como estamos fazendo? Qualquer sugestão é bem-vinda. Você pode comentar na caixa abaixo. Mantenha-se conectado! Parabéns.