Como remover os últimos n caracteres de uma string em bash
Em Bash, aparar o espaço em branco de entrada das entradas do usuário ou remover os caracteres finais de N de uma string pode ser usado para arrumar os nomes de arquivos com extensões indesejáveis:
Método 1: Usando o comando de corte
O comando de corte em Bash é usado para extrair seções de cada linha de um arquivo. Também pode ser usado para extrair uma gama específica de caracteres de uma string. Para remover os últimos n caracteres de uma string, podemos usar o comando Cut com a opção -c, e aqui está a sintaxe:
eco "string" | corte -c -n
Aqui a string é a sequência real da qual queremos remover os últimos n caracteres, e n é o número de caracteres que queremos remover, abaixo é o exemplo que usa a sintaxe acima:
#!/BIN/BASH
String = "Hello Linux"
eco "$ string" | Corte -C -5
No exemplo acima, usamos o comando Cut para remover os últimos 6 caracteres da string "Hello Linux" e a saída é "Olá".
Método 2: Usando o comando sed
O SED é um poderoso editor de fluxo que pode ser usado para realizar várias transformações de texto em um arquivo ou um fluxo de entrada. Para remover os últimos N caracteres de uma string usando sed, podemos usar a seguinte sintaxe de comando:
eco "string" | sed 's/.\ n \ $ // '
Aqui, n é o número de caracteres que queremos remover do final da string, e abaixo é um exemplo que usa o comando sed:
#!/BIN/BASH
String = "Hello Linux"
eco "$ string" | sed 's/.\ 6 \ $ // '
No exemplo acima, usamos o comando sed para remover os últimos 6 caracteres da string "Hello Linux" e a saída é "olá".
Método 3: Usando a expansão dos parâmetros
A expansão dos parâmetros é um recurso no Bash que nos permite manipular o valor de uma variável. Para remover os últimos N caracteres de uma string usando a expansão dos parâmetros, podemos usar a seguinte sintaxe:
$ string ::-n
Aqui, a variável da string está contendo a sequência real da qual queremos remover os últimos n caracteres, e n é o número de caracteres que queremos remover.
#!/BIN/BASH
String = "Hello Linux"
echo $ string ::-6
No exemplo acima, usamos a expansão dos parâmetros para remover os últimos 4 caracteres da string "Hello Linux" e a saída é "Olá".
Conclusão
Para remover os últimos n caracteres de uma string em Bash, o comando de corte, o comando sed e a expansão dos parâmetros são as três maneiras. Esses métodos são fáceis de usar e podem ser úteis em várias tarefas de script de bash. Ao usar esses métodos, podemos manipular facilmente strings e executar transformações de texto em bash.