• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Code & Café

Dicas de WordPress, PHP, MySQL e mais!

  • MySQL
  • Nginx
  • WordPress
  • PHP
  • Fail2ban
  • Bash
  • Ubuntu
  • Sobre
  • Show Search
Hide Search

O que é e para que serve o comando sed

Deixe seu Comentário

O sed é um editor de fluxo de dados (stream editor) utilizado para fazer transformações em um texto/input de dados. Para saber utilizar o sed você deve entender de expressões regulares (regexp).

Quer ver um exemplo? O comando abaixo stat -c é utilizado para mostrar o usuário e grupo ao qual pertence um determinado diretório. Neste exemplo o diretório www pertence ao usuário www-data e ao grupo www-data:

stat -c "%U %G" /var/www/
www-data www-data

Recentemente desenvolvi um script onde eu precisava destas duas informações, porém elas precisavam estar separadas por dois pontos e não por um espaço (que é o output padrão). Ou seja, eu queria que a saída do comando stat -c fosse assim:

www-data:www-data

Como eu consegui substituir o espaço por dois pontos? Usando sed!

stat -c "%U %G" /var/www/$site | sed "s/\ /:/g"

Em sed, o comando s/ diz para substituir uma palavra/texto/caractere por outra(o), ou seja, neste caso eu disse para substituir o espaço por dois pontos. O comando g é utilizado para fazer a substituição em todos os resultados encontrados, e não apenas no primeiro. Em teoria demos o seguinte:

sed "s/valor_a_substituir/novo_valor/g"

Outra forma muito comum de se utilizar o sed é quando você tem um arquivo de configuração padrão e quer trocar apenas o nome do projeto dentro deste arquivo:

sed -i ‘s/gato/cachorro/g’ exemplo.conf

Neste exemplo o sed vai substituir todo gato que aparecer dentro do arquivo exemplo.conf por cachorro! A opção -i te permite modificar arquivos protegidos.

Existe uma infinidade de utilizações possíveis para o comando sed e está fora do escopo deste post explorar todas as alternativas. Caso você queira aprofundar um pouco mais os seus conhecimentos aqui está o manual do sed.

Categoria(s): Bash

Reader Interactions

Comentários Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Primary Sidebar

< pesquisar >

< posts recentes >

  • Qual é a diferença entre npm e nvm?
  • Criando certificados SSL para as suas instalações WordPress locais com mkcert
  • PHP: Como fazer o autoload de classes usando o Composer?

< tags >

javaScript MySQL nginx node npm Nvidia nvm php Ubuntu WordPress WP-CLI

< categorias >

© 2023 · Code & Café ·