Como extrair parte de uma string usando comandos de corte e divisão

Como extrair parte de uma string usando comandos de corte e divisão
Durante a programação, muitas vezes há quando precisamos extrair uma parte específica de uma corda de um texto maior. Isso pode ser feito usando várias técnicas e ferramentas, e um dos métodos mais populares é o uso de comandos Bash/Cut/Split em Linux/Unix.

Esses comandos são poderosos e versáteis e podem ser usados ​​para extrair partes específicas de uma string com base em vários delimitadores, como espaços, vírgulas e semicolons. Este artigo explorará como extrair partes de uma string usando comandos Bash/Cut/Split e fornecer exemplos práticos para ajudá -lo a entender melhor como usá -los efetivamente.

O comando de corte

O comando de corte é usado para extrair seções de cada linha de um arquivo ou string. É um comando simples e poderoso que pode extrair campos com base em um delimitador ou em um personagem específico. A sintaxe para o comando Cut é a seguinte:

corte -d [delimiter] -f [campo] [nome do arquivo]

Aqui, a opção -d especifica o delimitador usado no arquivo de entrada, e a opção -f especifica o (s) campo (s) a ser extraído. O argumento do nome do arquivo é o arquivo de entrada a ser processado. Por exemplo, suponha que tenhamos um arquivo chamado testfile.txt, com o seguinte conteúdo:

BMW, M5
Lexus, LS470
Volvo, x70

Se queremos extrair o segundo campo de cada linha, podemos usar o seguinte script do shell:

#!/BIN/BASH
Cat Testfile.TXT
eco "Aqui está a parte extraída:"
corte -d ',' -f 2 testFile.TXT

Abaixo está a saída do código acima que exibe o arquivo e sua parte extraída:

O comando dividido

O comando dividido é usado para dividir uma string em uma matriz de substrings com base em um delimitador. É um comando embutido em bash que pode ser usado para extrair parte de uma string. A sintaxe para o comando dividido é a seguinte:

Ifs = [delimiter] Read -ra [Array_name] <<< "$[string]"

Aqui, a variável IFS especifica o delimitador usado na string, o comando de leitura lê a entrada e a divide em uma matriz, e o <<< operator is used to pass the string as input.

Por exemplo, suponha que tenhamos uma string chamada "BMW, M5". Se queremos extrair o segundo campo, podemos usar o seguinte script Bash:

#!/BIN/BASH
Cat Testfile.TXT
eco "Aqui está a parte extraída:"
Ifs = ',' Leia -ra Fields <<< "BMW,M5"
eco $ campos [1]

O comando Bash Split também pode ser usado para extrair vários campos de uma string usando várias variáveis ​​no comando de leitura.

Conclusão

Bash fornece vários métodos para extrair parte de uma string, incluindo os comandos de corte e divisão. O comando Cut pode ser usado para extrair campos com base em um delimitador ou em um personagem específico, enquanto o comando dividido pode ser usado para dividir uma string em uma matriz de substringas com base em um delimitador. Entender como extrair parte de uma string é uma habilidade importante para quem trabalha com scripts de bash.