Removendo linhas duplicadas no Shell

Olá galera. Mais uma dica para a categoria Shell. Se precisa eliminar aquelas linhas em duplicidade em um arquivo uma maneira fácil é usando o sort e o cut em conjunto.

cat -n file_name | sort -uk2 | sort -nk1 | cut -f2-

* file_name: Onde file_name é o nome do arquivo que estamos lendo

Criptografando um shell script

À primeira vista pode até parecer estranho criptografar e compilar um shell script de forma que ninguém possa ver o seu conteúdo. Porém, achei muito útil para algumas situações onde um servidor é acessado por mais de um administrador (sim! isso pode acontecer) e o mesmo possui privilégios de root e que permite ler todo o conteúdo, inclusive os seus scripts que possuem login e senha de algum determinado serviço.

Para que criptografar um script seja possível, basta instalar e utilizar o SHC seguindo os seguintes comandos:

Instale o meta-pacote build-essential ou equivalente da distribuição que você esteja utilizando:

apt-get install build-essential

Faça download o SHC:

wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz

Descompacte e compile o SHC:

tar zxvf shc-3.8.9.tgz
make

Depois de compilar, o script pedirá para você executar o comando make test, mas por algum motivo sempre dá um erro e que pode ser ignorado.

Agora basta criptografar um script de teste da seguinte forma:

./shc -f teste.sh

Serão criados dois arquivos:

-rw-r--r-- 1 root root 28 Feb 4 01:58 teste.sh
-rwx--x--x 1 root root 11K Feb 4 01:58 teste.sh.x
-rw-r--r-- 1 root root 9.1K Feb 4 01:58 teste.sh.x.c

teste.sh – é o seu script original;
teste.sh.x – é o script criptografado e compilado para o formato binário;
teste.sh.x.c – é o código fonte na linguagem C do script criptografado. A lógica do SHC é transformar o seu shell script na linguagem C escondendo o máximo de informações possível e depois compilar gerando um arquivo binário.
Agora execute o script criptografado:

./teste.sh.x

Referência: http://www.lovato.com.br/