Como faço para ignorar linhas em branco no grep?

Como faço para ignorar linhas em branco no grep?
Grep significa Impressão de expressão regular global. Tem muitas funcionalidades, eu.e., Pesquisando em um arquivo, pesquisando apenas nomes de um arquivo, grep recursivamente, etc. Grep é considerado um comando poderoso no portfólio de comando Linux quando se trata de pesquisar. Em muitos casos, enfrentamos situações em que não precisamos de espaços, ou é necessário remover lacunas indesejadas em nossos dados. Uma das maneiras mais desafiadoras de usar o Grep é ignorar ou remover linhas em branco do arquivo de texto. Este procedimento é realizado através de diferentes exemplos, então leia abaixo para ver como é feito.

Sintaxe

Grep [padrão] [nome do arquivo]

Depois de usar Grep, vem um padrão. O padrão implica como queremos usá -lo na remoção de espaço extra nos dados. Seguindo o padrão, o nome do arquivo é descrito através do qual o padrão é realizado.

Pré -requisito

Para entender a utilidade do grep facilmente, precisamos instalar o Ubuntu em nosso sistema. Forneça detalhes do usuário fornecendo nome de usuário e senha para ter privilégios para acessar os aplicativos do Linux. Após o login, abra o aplicativo e procure um terminal ou aplique a chave de atalho de Ctrl+Alt+T.

Usando [: em branco:] palavra -chave

Você pode criar um arquivo no editor de texto ou com uma linha de comando no terminal. Para criar um arquivo no terminal, incluindo os seguintes comandos.

$ echo “texto a ser inserido em um arquivo”> nome do arquivo.TXT

Não há necessidade de criar um arquivo se já estiver presente. Basta exibi -lo usando o comando anexado:

$ Cat FileName.TXT

Suponha que tenhamos um arquivo chamado bfile com uma extensão de texto. O texto escrito nesses arquivos contém espaços entre eles, como visto na figura abaixo.

$ eco "Meu nome é Guria.
eu sou um bom estudante.
Eu li na classe 5.
eu tenho um irmão e uma irmã
Minha mãe é uma esposa da casa
eu quero ir a escola
"> bfile.TXT

Exiba o conteúdo do arquivo como mostrado abaixo:

$ cat bfile.TXT

Essas linhas em branco podem ser removidas usando um comando em branco para ignorar espaços vazios entre as palavras ou strings.

$ egrep '^[[: em branco:]]*[^[: em branco:]#]' bfile.TXT

Depois de aplicar a consulta, os espaços em branco entre as linhas serão removidos e a saída não conterá mais espaço extra. A primeira palavra é destacada como espaços entre a última palavra da linha e entre as primeiras palavras da próxima linha são removidas. Também podemos aplicar condições no mesmo comando grep, adicionando esta função em branco para remover o espaço inútil na saída.

Usando [: espaço:]

Outro exemplo de ignorar o espaço é explicado aqui. Primeiro, vamos criar nosso arquivo de texto no terminal:

$ echo "Meu nome é hamna
Sou dona de casa
Eu quero aprender programas
Eu tenho uma filha
"> file20

Sem mencionar a extensão do arquivo, primeiro exibiremos o arquivo existente usando o comando.

$ CAT File20

Vejamos como o espaço extra é removido usando o comando grep além do [: espaço:] palavra -chave. A opção -v -V de Grep ajudará a imprimir linhas que não têm linhas em branco e espaçamento extra que também está incluído em um formulário de parágrafo.

$ grep -v '^[[: espaço:]]*$' file20

Você verá que linhas extras são removidas e a saída está em formato sequenciado em termos de linha. É assim que a metodologia Grep -V é tão útil para obter a meta necessária.

Vamos fazer outro exemplo com o seguinte arquivo de dados:

$ echo "grep é um comando versátil que ajuda o novo usuário.
É usado para pesquisar nomes de arquivos com a ajuda de comandos.
Podemos ir para o Mannual usando Grep Man
"> fileg.TXT

A saída é a seguinte:

Ao aplicar o comando, nosso arquivo de saída foi obtido. Aqui, podemos ver dados sem espaçar -se entre as linhas que são escritas consecutivamente.

$ grep -v '^[[: espaço:]]*$' fileg.TXT

Além dos comandos longos, também podemos ir com os curtos comandos escritos em Linux e Unix para implementar o Grep suporta caracteres abreviados.

$ grep '\ s' fileg.TXT

Vimos como a saída é obtida aplicando comandos da entrada. Aqui, aprenderemos como a entrada é mantida de volta da saída.

$ grep '\ s' fileg.txt> tmp.txt && mv tmp.txt fileg.TXT

Aqui usaremos um arquivo de texto temporário com extensão do texto nomeado como TMP para transferir o conteúdo filtrado de volta ao arquivo original.

Usando ^#

Vamos criar um novo arquivo de dados para testar esta versão de sintaxe:

$ echo "O design gráfico é uma boa plataforma de design
e fazer cartões de visita de logotipos
e pôsteres etc. Photoshop
e ilustrador são usados ​​para esse "> fileb.TXT
$ CAT FileB.TXT

O arquivo de texto inclui 4 linhas, tendo espaço entre eles. Essas linhas espaciais são facilmente removidas usando um comando específico.

$ grep -ev "^#|^$" FileB.TXT

Operações prolongadas regulares são ativadas por -e, o que permite todas as expressões regulares, especialmente o tubo. Um tubo é usado como uma condição opcional "ou" em qualquer padrão.”^#”. Isso mostra a correspondência das linhas de texto no arquivo que começa com o sinal #. "^$" Corresponderá a todos os espaços gratuitos no texto ou em branco.

A saída mostra a remoção completa do espaço extra entre as linhas presentes no arquivo de dados. Neste exemplo, vimos que no comando que "^#" vem primeiro, o que significa que o texto é comparado primeiro. “^$” Vem depois | operador, então o espaço livre é correspondido depois.

Usando ^$

Assim como o exemplo mencionado acima, viremos com os mesmos resultados porque o comando é quase o mesmo. No entanto, o padrão é escrito de maneira oposta. Arquivo22.txt é um arquivo, que vamos usar na remoção de espaços.

$ echo "Escrita técnica é uma boa fera de estudos
é um campo analítico
Podemos aprender muitas coisas nele
Escrita comercial é sua categoria de escrita
Obrigado, fot learning "> file22.TXT
$ grep -v '^$' arquivo22.TXT

A mesma metodologia é aplicada, exceto o trabalho com prioridade. De acordo com este comando, primeiro, os espaços livres serão correspondidos, então os arquivos de texto são correspondidos. A saída fornecerá uma sequência de linhas removendo lacunas extras.

Outros comandos simples

Grep '^…' arquivo22.TXT
grep '.'arquivo22.TXT

Ambos são tão simples e ajudam a remover lacunas nas linhas de texto.

Conclusão

Remover lacunas inúteis em arquivos com a ajuda de expressões regulares é uma abordagem bastante fácil para obter uma sequência suave de dados e manter a consistência. Exemplos são explicados de maneira detalhada para aprimorar suas informações sobre o tópico.