Skip to main content

Posts

Showing posts from July, 2015

Recursivamente procurar e substituir uma palavra em vários arquivos

O sistema operacional Linux oferece várias ferramentas para gerenciamento e edição de arquivos, neste artigo mostram como usar alguns comandos para substituir uma ou mais palavras em um arquivo de texto. Um comando bastante útil quando você precisa substituir uma ou mais palavras em alguns arquivos é este: sed -i 's/parola1/parola2/g' *.txt Desta forma será substituído parola1 por parola2 em todos os arquivos de texto no diretório atual. Mas se tivéssemos que fazer isso também substituir os arquivos em algumas pastas, então o comando acima se torna-se: find ./ -type f -exec sed -i 's/parola1/parola2/g' '{}' \; Neste caso, eu fiz sem o filtro do tipo de arquivo, ou seja sem a extensão .txt. Por isso todos os arquivos serão levados em conta no diretório atual e em seus subdiretórios. No comando find que foi utilizado, o “-exec” que permite executar um comando, a cada vez que um arquivo é encontrado, que respeite as regras estabelecidas para a pesquisa

Backup das permissões de arquivos e pastas no Linux

Recentemente precisei fazer backup das permissões de arquivos e pastas no Linux, pois precisava para caso ocorresse alguma coisa errada nas permissões que eu estava mexendo. Então encontrei dois comandos para resolver isso, um para fazer o backup e outro para restaurar. O legal é que ele preserva tudo, tanto as permissões quanto o dono e o grupo, dessa forma é possível fazer um backup completo deles em um simples arquivo texto e restaurá-los depois. O comando responsável para o backup é o getfacl e podemos utilizar a seguinte sintaxe: getfacl -Rp /home/rodrigo/Desktop > /home/rodrigo/permissoes_desktop.txt A opção -R (maiúsculo) é para fazer backup das permissões recursivamente, ou seja, nas pastas e subpastas. O -p (minúsculo) é para preservar o caminho absoluto, caso contrário ele não colocará a barra inicial ( / ). Nesse caso estamos direcionando para um arquivo. O arquivo gerado é um arquivo de texto normal, pode até ser utilizado para consultas com um simples cat ou