Operadores de redirecionamento Bash Linux

Operadores de redirecionamento Bash Linux
No Linux, o terminal é tudo, é onde passamos comandos, e é onde passamos scripts. Portanto, um dos idiomas de script mais importantes é o Bash. O script de bash é usado para automatizar as tarefas chatas no Linux. Para automatizar as tarefas, os comandos são escritos dentro do script e recebem uma extensão de .sh. Como parte dos comandos, certos operadores também são usados. Esses operadores são exclusivos do Bash, e cada um tem seu próprio significado específico. Neste tutorial, analisaremos os operadores de redirecionamento encontrados durante o script de bash e seu significado específico.

Operador de redirecionamento: <

O símbolo < is used for input redirection. Files, for example, can be used as input. However, in this case, the input redirection is a read-only redirection.

Por exemplo:

#! /BIN/BASH
gato < file.txt

Nesse caso, o arquivo.txt é tomado como entrada, e o comando do gato e depois o coloca.

Operador de redirecionamento: <<

O operador de redirecionamento << is also known as the here-document. The here-document allows one to put a line of input into a command in many.

Por exemplo:

#! /BIN/BASH
gato << EOF
primeira linha
segunda linha
Eof
Banheiro << EOF
primeira linha
segunda linha
Eof

Ok, então aqui, temos duas linhas de entrada. Na primeira seção, enviamos a entrada para o gato, que gate tudo. E na segunda seção, contamos o número de linhas, palavras e caracteres usando o comando WC. De qualquer maneira, o ponto é que poderíamos enviar várias linhas como entrada em vez de uma única linha.

Operador de redirecionamento:>

Este símbolo, conhecido como operador de redirecionamento de arquivos, é normalmente usado para redirecionar o conteúdo de um comando/arquivo para outro por substituindo isto. Lembre -se; Ele substitui - em negrito e em itálico!

Por exemplo:

#! /BIN/BASH
eco “Hello World '> Arquivo.TXT

Aqui, o> símbolo é semelhante a 1>. Isso ocorre porque o 1 é um descritor de arquivo para a saída padrão. Observe que os descritores de arquivos são os seguintes:

0 - Entrada padrão, stdin
1 - Saída padrão, stdout
2 - Erro padrão, Stderr

No cenário anterior, a única seta para a frente era equivalente a 1>. No entanto, também podemos escrever 2> para encaminhar o erro padrão.

Por exemplo:

#! /BIN/BASH
arquivo mcat.txt 2> file2.TXT

Aqui, o 2> significa que o erro gerado será despejado no arquivo2.TXT.

Operador de redirecionamento: >>

O símbolo >> é usado para anexar e não substituir! O operador de redirecionamento de arquivos> substitui ou substitui tudo enquanto o >> é usado para anexar. Este último adicionará o conteúdo especificado ao final do arquivo.

Por exemplo:

#! /BIN/BASH
eco "esta é a segunda linha" >> arquivo.TXT
eco "esta é a terceira linha" >> arquivo.TXT

Este último anexará as duas linhas ao arquivo chamado arquivo.TXT. O resultado de arquivo.txt será o seguinte:

Operador de redirecionamento: |

O operador de redirecionamento | é usado para enviar a saída do primeiro comando como entrada do segundo comando. Por exemplo, se eu passar em um comando inicial e depois "tubo" a saída gerada por este comando usando o | operador em um segundo comando, ele será recebido como entrada e depois processado.

Por exemplo:

#! /BIN/BASH
ls-la | sed 's/bash/redirection_operator/'

Aqui, sed com o comando s é usado para substituir um nome por outro. Então, sed 's/bash/redirection_operator/' é usado para substituir a palavra festa pela palavra redirection_operator.

então o que estamos fazendo aqui? Bem, 'ls -la' listará tudo em detalhes, e o operador do tubo vai aceitar isso e enviará para o segundo comando. O segundo comando (sed 's/bash/redirection_operator/') substituirá a palavra batida pela palavra redirection_operator e a imprimirá na tela.

Operador de redirecionamento:> &

Este símbolo redireciona a saída padrão e o erro padrão.

Por exemplo;

BASH -C 'LS -LA> & FILE.TXT'

Nesse caso, o> & símbolo redireciona a saída padrão e o erro padrão para o arquivo chamado arquivo.TXT. Assim, tanto a saída gerada quanto o erro gerado é colocado no mesmo arquivo.

Agora, suponha que escrevamos isso em vez disso:

BASH -C 'MLS -LA> & FILE.TXT'

Nesse caso, um erro deve ser gerado porque não há comando MLS. Aqui, o erro também será enviado para o arquivo.documento txt.

Operador de redirecionamento:> |

Há momentos em que você não pode substituir um arquivo devido a restrições de arquivo. Agora suponha que você tenha um arquivo chamado arquivo.txt que não pode ser substituído.

Portanto, o comando a seguir não substituirá um arquivo:

#! /BIN/BASH
eco “ehlo”> /tmp /arquivo.TXT

Usamos o operador> | substituir a força do arquivo nesses casos.

Aqui, escrevemos o seguinte para substituir o arquivo à força:

#! /BIN/BASH
eco “ehlo”> | /tmp/arquivo.TXT

Operador de redirecionamento: & >>

O operador & >> anexará a saída padrão e o erro padrão ao arquivo especificado.

Ex:

#! /BIN/BASH
LSL & >> arquivo.TXT

Neste exemplo, temos um arquivo chamado arquivo.txt, contendo duas linhas. Quando executamos o script chamado Bash.sh, que contém um comando que não existe, isso deve causar um erro. Este erro é capturado e anexado ao arquivo.TXT. Se o comando não tivesse contido nenhum erro, ele o teria pego também e o enviado para anexá -lo ao arquivo chamado arquivo.TXT.

Operador de redirecionamento: <<-

O operador de redirecionamento <<- will strip all tabs from a multi-line input.

Por exemplo:

#! /BIN/BASH
mais <<- EOF
primeira linha
segunda linha
Eof

Aqui existem guias antes das duas linhas de entrada (primeira linha, segunda linha). Mas quando a saída é gerada, as guias são ignoradas.

Operador de redirecionamento:

O operador de redirecionamento abre um arquivo para leitura e escrita.

Bash Script é uma linguagem de script -chave que pode ser usada para automatizar tarefas. Durante o script de bash, encontramos muito código, mas também encontramos operadores de redirecionamento que são exclusivos para bater. Cada um dos operadores tem um papel particular na script de bash, e nem sempre são óbvios. Neste tutorial, analisamos alguns operadores de redirecionamento usados ​​enquanto escrevem scripts de bash. Obviamente, existem muitos operadores de redirecionamento por aí; No entanto, alguns são encontrados com tanta frequência que pode ser necessário conhecê -los enquanto Bash Script. Então vá em frente, sem medo dos operadores de redirecionamento daqui em diante!

Codificação feliz!