Muito se tem falado sobre o prazer de usar o console. Não é por acaso: foi concebido pelos fundadores do Unix . Há uma estranha sensação de que esta é a maneira mais correta de interagir com um computador.
Além disso, a mesma sensação agradável surge ao usar as teclas de atalho em qualquer aplicativo, mesmo com uma interface gráfica.
Qual é o problema?
Manipulador exótico
Trackballs foram originalmente usados para aplicações profissionais especiais, como sistemas de controle de radar. O mouse, como um trackball invertido coberto por uma caixa, foi inventado na década de 1980. Naquela época, os programadores não entendiam muito bem por que um computador precisava de um mouse, se o código era escrito na forma de instruções de máquina e a interação com o mainframe ocorria inteiramente no console.
Manipuladores de roda sofisticados custam cerca de US $ 400. Depois veio o revolucionário Apple Lisa, um dos primeiros PCs com interface gráfica. A Apple descartou - reduziu o custo do manipulador para US $ 25 e fez um design "sexy" com um botão. O mouse deixou de ser um acessório profissional em um gadget de massa.
Apple Lisa. Um design muito elegante para a época
Desde então, o mouse e a GUI tornaram-se firmemente associados aos computadores Apple e à interface em janela da moda.
O Windows logo apareceu. Depois os primeiros jogos com suporte a mouse, por exemplo, para movimentos mais precisos dos personagens ... Parece que os jogos de computador têm estimulado constantemente o progresso tecnológico, incluindo desempenho da CPU, desempenho da GPU, capacidade de armazenamento, popularidade de mouses e outros manipuladores exóticos.
Os jogadores estão sempre insatisfeitos com o desempenho atual dos computadores pessoais e estão constantemente exigindo que a indústria aumente o poder do hardware. Se você observar quem coleta as configurações de PC mais produtivas e compra as versões mais poderosas de processadores de desktop, haverá centenas de fãs de FPS recorde, alguns cientistas de aprendizado de máquina e um programador que constrói e compila algo todos os dias. E mesmo assim, os três últimos personagens precisam de um computador especificamente para o trabalho, então nem sempre investem seu próprio dinheiro, como os jogadores.
Se não fosse pelos jogos de computador, os fabricantes de processadores poderiam se concentrar apenas nas CPUs do servidor. Na verdade, um exército de contadores, economistas e outros funcionários de escritório vai sentar-se calmamente em computadores há 20 anos, com o qual eles estão completamente satisfeitos . Eles não sabem que hardware está dentro do "processador" (como chamam a unidade do sistema). Mas não tire a mão do mouse favorito. Tire o mouse do escriturário - e ele ficará olhando fixamente para o monitor por vários minutos e contraindo inutilmente a mão, incapaz de realizar uma única ação útil, como se estivesse sob sedativos.
Hoje em dia, é raro encontrar um computador sem mouse. Mas o prazer de trabalhar no console permanece.
Em fóruns e blogs, os usuários do Linux compartilham suas frases de efeito favoritas e outros truques para melhorar a eficiência do fluxo de trabalho. Há até um ótimo site de votação de uma linha...
Cool one-liners
Aqui estão alguns exemplos de usos interessantes para programas Linux.
ps aux | convert label:@- process.png
O comando converte a saída do console em uma imagem. Por exemplo, para compartilhar com colegas como uma captura de tela. A própria ideia de fazer uma captura de tela do texto parece conceitualmente errada para alguns, mas em alguns casos é apenas mais rápida e conveniente. Hoje em dia, com a proliferação de smartphones e tablets, as capturas de tela estão se tornando quase o padrão para copiar texto da tela, o que é um pouco triste se você tomar isso como uma dica do declínio dos computadores universais ...
Nota. O utilitário
convert
está incluído no pacote ImageMagick , portanto, você precisa instalá-lo primeiro.
Em geral, o texto do console pode ser postado rapidamente por meio de um serviço de Internet como termbin.com (é como pastebin, apenas para o console):
ps aux | nc termbin.com 9999
Como de costume, com um alias para uso frequente:
alias tb='nc termbin.com 9999'
Próximo:
curl ipinfo.io
Isso se você quiser descobrir seu endereço IP externo por meio do serviço ipinfo.io .
git log --format='%aN' | sort -u
Uma equipe muito útil se você estiver trabalhando em um projeto de código aberto e quiser ver os colaboradores.
history | awk '{print $2}' | sort | uniq -c | sort -rn | head
Uma lista classificada dos comandos executados com mais frequência (também é útil adicionar aliases para execução com alguns cliques).
ls -d */
Listando apenas diretórios. Um comando útil que também seria bom para atribuir um apelido para uso rápido.
du -hs */ | sort -hr | head
Este comando mostra apenas os 10 maiores diretórios do diretório atual.
ss -p
Veja quais aplicativos estão consumindo tráfego (utilitários
iftop
e
nethogs
forneça mais detalhes).
rm -f !(test.txt)
O comando remove todos os arquivos do diretório, exceto aquele especificado entre parênteses. Isso funciona depois de habilitar a globulação estendida em bash (
shopt -s extglob
).
python3 -m http.server
Inicia o servidor http e começa a servir arquivos. Conveniente se você deseja navegar em algum arquivo html na rede.
screen -S the-screen-name
Criação de uma sessão de tela.
screen -x the-screen-name
Conectando-se a uma sessão de tela. Tal sessão pode ser criada à força para o usuário após sua autorização no sistema - e observar o que está acontecendo em sua tela. Útil se alguém se conectou ao seu servidor e você deseja ver o que eles estão fazendo.
O utilitário
screen
vem por padrão com muitas distribuições Linux, embora não todas.
alias copy='xclip -i -selection clipboard'
cat file.txt | copy
Copiar um arquivo para a área de transferência quando o primeiro one-liner é registrado como um alias
copy
no bash.
sudo !!
Execute o último comando sob o root, se você esqueceu de digitar o comando anterior
sudo
. Essa equipe ocupa o primeiro lugar no ranking de one-liners .
Claro, esses são apenas exemplos. A beleza do console Linux é que você mesmo pode criar uma sequência de comandos que ninguém jamais usou, mas você precisa desse pipeline específico nesta situação.
Atalhos de teclado como legado do console
Em programas gráficos para Windows, muitas vezes você também deseja fazer o trabalho com teclas de atalho, sem tocar neste manipulador "Apple". Na verdade, o uso de teclas de atalho acelera muito o fluxo de trabalho em qualquer programa.
Bash aliases têm o mesmo propósito: executar um comando com o mínimo de esforço, ou seja, com o menor número de pressionamentos de tecla.
Um técnico experiente interage com a máquina quase na velocidade da luz. A velocidade é limitada apenas pelo tempo de processamento dos comandos na CPU e pela velocidade de saída do texto para o console, ou seja, pela velocidade do subsistema gráfico. E com latências de rede, o computador é mais lento que o humano . Este é o ideal de desempenho humano.
Se subirmos para um nível mais alto de abstração, então as teclas de atalho nas interfaces gráficas são, em certo sentido, um descendente distante do console, uma espécie de "eco" histórico. Com teclas de atalho, uma linha e apelidos no bash, uma pessoa se torna "mais rápida que um computador" - você tem que fazer uma pausa para esperar o resultado da execução do comando. A CPU está quase 100% carregada.
Esta é uma vantagem fundamental do teclado como ferramenta de entrada de comandos em relação a qualquer teclado. Este também é o ponto forte do console.
Claro, nem todos os comandos são teclas de atalho. Às vezes você precisa mover um objeto gráfico na tela ... Então você precisa de um cursor. Mas se a tecla de atalho existe, é sem opções mais rápido do que a ação análoga do mouse no menu. As teclas de atalho são a prova viva de que os comandos do teclado são executados mais rapidamente.
Em geral, esse fato pode levar à suposição de que os fundadores do Unix estavam certos afinal, e seu legado vive em todos os sistemas operacionais . A GUI é apenas uma fina camada de abstração no topo da poderosa base que eles construíram. Afinal, lembramos que o macOS também é baseado no Unix e pertence à família de sistemas * nix.
Mas o Windows e outros elementos da interface gráfica do Windows, de acordo com a Apple, são um produto secundário copiado da interface do Lisa (veja o processo Apple vs. Microsoft de 1988 a 1994 ).
O tribunal rejeitou a reclamação da Apple contra a Microsoft. Mas algumas coisas chamam atenção para si mesmas. Por exemplo, um comando
open .
no console do macOS abre o Finder no diretório atual. No Windows, o comando faz o mesmo
start .
(o Finder é chamado de Explorer aqui). As janelas no macOS são fechadas com uma cruz no canto superior esquerdo, e no Windows - no canto direito. Talvez, pelo exemplo de tais detalhes, Bill Gates tenha provado ao tribunal que possui uma interface gráfica “original” que é “muito diferente” do macOS.
Se a interface gráfica foi copiada ou não é formalmente desconhecido. Mas o fato é que é apenas uma camada fina sobre o sistema. Assim como um mouse, é um acessório conveniente, mas nem um pouco necessário.
Propaganda
Nossa empresa oferece aluguel de VPS para absolutamente qualquer projeto. Crie seu próprio plano de tarifas em alguns cliques, a configuração máxima permitirá que você acomode quase qualquer projeto - 128 núcleos de CPU, 512 GB de RAM, 4000 GB NVMe!
Participe do nosso chat do Telegram .