Latest · March 5, 2022 0

Como usar o Sed no Linux

Se você estiver mudando sua instalação do WordPress de um servidor MySQL 8 para MySQL 5.7 (ou abaixo), provavelmente encontrará o1273 Unknown collation: 'utf8mb4_0900_ai_ci'erro ao tentar importar o banco de dados. Não importa quais ferramentas você usa para importar ou ar o banco de dados, você não pode escapar desse erro.

No entanto, se você já executou seu blog em um servidor MySQL 5.7 e recentemente mudou para um MySQL 8, mas agora voltando para o MySQL 5.7, as tabelas principais do WordPress (posts, taxonomias, opções, comentários, etc.) você instalou no servidor MySQL 5.7 ainda deve estar usando o agrupamento “utf8mb4_unicode_520_ci”.

Você pode importar todas as tabelas do seu banco de dados que usa o agrupamento “utf8mb4_unicode_520_ci”. Então, o que você precisa fazer é encontrar as tabelas em seu banco de dados que usam o agrupamento “utf8mb4_0900_ai_ci” e excluí-las do arquivo de backup de banco de dados ado.

Você precisa descobrir quais tabelas em seu banco de dados usam o agrupamento “utf8mb4_0900_ai_ci” para que possamos excluir essas tabelas ao ar o banco de dados.

Se você tiver acesso SSH ao servidor e as credenciais de acesso ao banco de dados(que você pode obter totalmente do arquivo wp-config.php)você pode executar o seguinte comando para encontrar facilmente as tabelas com o agrupamento “utf8mb4_0900_ai_ci”.

Tan YinSubstitua ousernameedatabasecom seu banco de dados e nome de usuário no comando acima.

Digite sua senha de usuário do banco de dados quando solicitado aEnter password:e você terá a lista de tabelas usando o agrupamento “utf8mb4_0900_ai_ci” em seu banco de dados.

As tabelas usando o agrupamento “utf8mb4_0900_ai_ci” devem ser apenas de plugins que você instalou depois de mudar para o MySQL 8. Anote os nomes das tabelas para que você possa excluí-las na próxima vez que ar seu banco de dados.

Agora que você tem os nomes das tabelas usando o agrupamento “utf8mb4_0900_ai_ci”, você pode ar um novo arquivo de backup de banco de dados que não inclui as tabelas “utf8mb4_0900_ai_ci” para que você possa importá-lo para uma instalação do WordPress em execução em um servidor MySQL 5.7.

Supondo que você já use o WP-CLI para ar/importar o banco de dados do WordPress, execute o seguinte comando para ar seu banco de dados excluindo algumas das tabelas.

Tan YinSubstituirtable_nameno comando acima com os nomes reais das tabelas que usam o agrupamento “utf8mb4_0900_ai_ci”.

É isso. Agora você pode importar facilmente seu banco de dados WordPress para o novo servidor que executa o MySQL 5.7.

/*# sourceURL=/css/ampshared.css*/

This type of text editor can also be categorised as a non interactive text editor.

Let us see some common options to edit files using Sed. We will take the following file as example:

To search for a string in a file and replace with another string, run:

Here, the -i sinalizador instrui o sed a gravar as alterações no arquivo. Sem esta bandeira, sed apenas exibirá o arquivo com a string alterada.

Nas citações, temos s/cat/fox/g. O s é para o comando de busca e substituição de sed. Então temos a string a ser pesquisada, que é cat. Em seguida, a string para substituí-lo, ou seja, fox. Por fim, temos o opcional gque instrui sed para substituir todas as ocorrências em todas as linhas do arquivo. Sem o gsed substituirá apenas a primeira ocorrência de cat em cada linha.

Regex também pode ser usado aqui.

Para inserir texto antes de uma linha com uma string correspondente, use:

Aqui, cat é a string pesquisada e Start: é a string a ser inserida antes da linha em que a string pesquisada é encontrada.

Da mesma forma, para inserir texto após uma linha, use:

Para excluir uma linha contendo uma substring, use:

Para excluir uma linha com número de linha, por exemplo. a primeira linha, use:

Para combinar várias funções, por exemplo. pesquise e substitua, exclua, em um comando, -e bandeira pode ser usada.