Vamos começar o ano novo com esses truques de linha de comando Unix para aumentar a produtividade no Terminal. Eu os encontrei ao longo dos anos, e agora vou compartilhar com vocês.
Unix-command-line-tricks.001

Excluindo um arquivo ENORME

Eu tinha um arquivo de log enorme 200GB eu preciso excluir em um servidor web de produção. Meu rm e ls comando foi caiu e eu estava com medo de que o sistema de um rastreamento com enorme disco I / O carga. Para remover um arquivo ENORME, digite:

  & Gt;  / Path / to / file.log
 # Ou use a seguinte sintaxe
 : & Gt;  / Path / to / file.log

 # Finalmente excluí-lo
 Rm / caminho / para / arquivo.log

Deseja cache de saída do console?

Experimente o utilitário de linha de comandos do script para criar uma cópia dactilografada de tudo impresso no seu terminal.

  Script my.terminal.session

Digite comandos:

  Ls
 encontro
 Sudo serviço foo parar

Para sair (para encerrar a sessão de script) digite exit ou logout ou pressionecontrol-D

  Saída

Para visualizar o tipo:

  Mais minha sessão terminal
 Menos minha sessão terminal
 Cat my.terminal.session

Restaurando pasta excluída / tmp

Como minha jornada continua com Linux e Unix shell, eu cometi alguns erros . Eu acidentalmente excluído / tmp pasta. Para restaurá-lo tudo o que você precisa fazer é:

  Mkdir / tmp
 Chmod 1777 / tmp
 Chown root: root / tmp
 Ls -ld / tmp

Como bloquear um diretório

Para privacidade dos meus dados eu queria bloquear / downloads no meu servidor de arquivos. Então eu corri:

  Chmod 0000 / downloads

O usuário root ainda pode ter acesso e os comandos ls e cd não funcionarão. Voltar:

  Chmod 0755 / downloads

Arquivo de proteção de senha no editor de texto do vim

Medo de que o usuário root ou alguém pode bisbilhotar em seus arquivos de texto pessoais? Tente proteção por senha em um arquivo no vim, digite:

  Vim + X filename

Ou, antes de sair em vim use : X vim comando para criptografar seu arquivo e vim solicitará uma senha.

Gibberish claro em toda a tela

Basta digitar:

  restabelecer

Tornando-se humano

Passe a opção de linha de comando -h ou -H (e outras opções) para os utilitários GNU ou BSD para obter saída de comandos de comando como ls, df, du, em formatos compreensíveis por humanos:

  Ls-lh
 # Tamanhos de impressão em formato legível (por exemplo, 1K 234M 2G)
 Df -h
 Df -k
 # Mostrar saída em bytes, KB, MB ou GB
 Livre- b
 Livre -k
 Livre -m
 Livre -g
 # Tamanhos de impressão em formato legível (por exemplo, 1K 234M 2G)
 Duh
 # Obter permissões do sistema de arquivos em formato legível para humanos
 Stat -c % A / boot
 # Comparar números legíveis com humanos
 Sort -h -a file
 # Exibir as informações da CPU em formato legível em um Linux
 Lscpu
 Lscpu -e
 Lscpu -e = cpu, nó
 # Mostrar o tamanho de cada arquivo, mas de uma forma mais legível para humanos
 Árvore -h
 Árvore -h / boot

Mostrar informações sobre usuários conhecidos no sistema baseado em Linux

Basta digitar:

  ## linux version ##
 Lslogins

 ## BSD versão ##
 Logins

Saídas de amostra:

  UID USUÁRIO PWD-LOCK PWD-DENY ÚLTIMO LOGIN GECOS
   0 root 0 0 22:37:59 raiz
   1 bin 0 1 bin
   2 daemon 0 1 daemon
   3 adm 0 1 adm
   4 lp 0 1 lp
   5 sync 0 1 sync
   6 encerramento 0 1 2014-Dec17 encerramento
   7 halt 0 1 halt
   8 mail 0 1 mail
  10 uucp 0 1 uucp
  11 operador 0 1 operador
  12 jogos 0 1 jogos
  13 gopher 0 1 gopher
  14 ftp 0 1 Usuário FTP
  27 mysql 0 1 Servidor MySQL
  38 ntp 0 1            
  48 apache 0 1 Apache
  68 haldaemon 0 1 HAL daemon
  69 vcsa 0 1 proprietário da memória do console virtual
  72 tcpdump 0 1            
  74 sshd 0 1 SSH separado por privilégios
  81 dbus 0 1 Bus de mensagem do sistema
  89 postfix 0 1            
  99 ninguém 0 1 Ninguém
 173 abrt 0 1            
 497 vnstat 0 1 vnStat user
 498 nginx 0 1 usuário nginx
 499 saslauth 0 1 "Usuário Saslauthd"

Como faço para corrigir a confusão criada por arquivos untarred acidentalmente no diretório atual?

Então eu acidentalmente untar um tarball em / var / www / html / diretório em vez de / home / projects / www / current. Ele criou confusão em / var / www / html /. A maneira mais fácil de corrigir esta bagunça:

  Cd / var / www / html /
 / Bin / rm -f " $ (tar ztf /path/to/file.tar.gz) "

Confuso em uma saída de comando superior?

Sério, você precisa experimentar htop em vez de top:

  Sudo htop

Deseja executar o mesmo comando novamente?

Apenas digite !! . Por exemplo:

  / Myhome / dir / script / nome arg1 arg2

 # Para executar o mesmo comando novamente
 !!

 ## Para executar o último comando novamente como usuário root
 Sudo !!

O !! Repete o comando mais recente. Para executar o comando mais recente começando com “foo”:

  !  Foo
 # Executar o comando mais recente começando com "service" como root
 Sudo  serviço

O $! $ Usa para executar o comando com o último argumento do comando mais recente:

  # Editar nginx.conf
 Sudo vi / etc / nginx / nginx.conf

 # Teste nginx.conf para erros
 / Sbin / nginx -t -c / etc / nginx / nginx.conf

 # Após testar um arquivo com "/ sbin / nginx -t -c /etc/nginx/nginx.conf", você
 # Pode editar o arquivo novamente com vi
 Sudo vi  -benzóico.

Receba um lembrete quando você tem que sair

Se precisar de um lembrete para sair do terminal, digite o seguinte comando:

  Deixe + hhmm

Onde,

  • Hhmm – A hora do dia está na forma hhmm onde hh é um tempo em horas (em um relógio de 12 ou 24 horas), e mm são minutos. Todos os tempos são convertidos para um relógio de 12 horas, e presume-se que nas próximas 12 horas.

Lar Doce Lar

Quer ir para o diretório em que você estava? Corre:
cd -
Precisa retornar rapidamente ao seu diretório pessoal? Entrar:
cd
A variável CDPATH define o caminho de pesquisa para o diretório que contém os diretórios:

  Export CDPATH = / var / www: / nas10

Agora, em vez de digitar cd / var / www / html / eu posso simplesmente digitar o seguinte para cd no caminho / var / www / html:

  Cd html

Editando um arquivo sendo visualizado com menos pager

Para editar um arquivo sendo visualizado com menos pager, pressione v . Você terá o arquivo para edição em $ EDITOR:

  Menos * .c
 Menos foo.html
 ## Pressione v para editar o arquivo ##
 ## Sair do editor e você retornaria ao pager menos novamente ##

Lista todos os arquivos ou diretórios em seu sistema

Para ver todos os diretórios em seu sistema, execute:

  Find / -type d |  Menos

 # Listar todos os diretórios em seu $ HOME
 Encontre $ HOME -type d -ls |  Menos

Para ver todos os arquivos, execute:

  Find / -type f |  Menos

 # Listar todos os arquivos no seu $ HOME
 Encontrar $ HOME -type f -ls |  Menos

Criar árvores de diretório em um único comando

Você pode criar árvores de diretórios uma de cada vez usando o comando mkdir passando a opção -p :

  Mkdir -p / jail / { dev, bin, sbin, etc, usr, lib, lib64 }
 Ls -l / jail /

Copiar arquivo em vários diretórios

Em vez de correr:

  Cp / caminho / para / arquivo / usr / dir1
 Cp / caminho / para / arquivo / var / dir2
 Cp / caminho / para / arquivo / nas / dir3

Execute o seguinte comando para copiar o arquivo em vários diretórios:

  Echo / usr / dir1 / var / dir2 / nas / dir3 |  Xargs -n 1 cp -v / caminho / para / arquivo

A criação de uma função shell é deixada como um exercício para o leitor

Encontre rapidamente diferenças entre dois diretórios

O comando diff compara arquivos linha por linha. Também pode comparar dois diretórios:

  Ls -l / tmp / r
 Ls -l / tmp / s
 # Comparar duas pastas usando diff ##
 Diff / tmp / r / / tmp / s /
FIG. : Encontrando diferenças entre pastas

FIG. : Encontrando diferenças entre pastas

Formatação de texto

Você pode reformatar cada parágrafo com o comando fmt. Neste exemplo, eu vou reformatar o arquivo envolvendo linhas sobrepostas e preenchendo linhas curtas:

  Fmt arquivo.txt

Você também pode dividir linhas longas, mas não reencher ou seja, enrolar linhas longas, mas não preencher linhas curtas:

  Fmt -s arquivo.txt

Veja a saída e escreva-a em um arquivo

Use o comando tee da seguinte maneira para ver a saída na tela e também gravar em um arquivo de log chamado my.log:

  Mycoolapp arg1 arg2 input.file |  Tee my.log

O comando tee garante que você verá a saída mycoolapp na tela e em um arquivo ao mesmo tempo.

Anúncios