Cómo eliminar los últimos n caracteres de una cadena en Bash
En Bash, recortar el espacio en blanco de las entradas del usuario o eliminar los caracteres n finales de una cadena se puede usar para ordenar los nombres de archivos con extensiones indeseables:
Método 1: Uso del comando CORT
El comando de corte en bash se usa para extraer secciones de cada línea de un archivo. También se puede usar para extraer una gama específica de caracteres de una cadena. Para eliminar los últimos n caracteres de una cadena, podemos usar el comando CUT con la opción -c, y aquí está la sintaxis:
echo "cadena" | cortar -c -n
Aquí la cadena es la cadena real de la que queremos eliminar los últimos n caracteres, y N es la cantidad de caracteres que queremos eliminar, a continuación se encuentra el ejemplo que usa la sintaxis anterior:
#!/bin/bash
String = "Hola Linux"
echo "$ String" | Cortar -C -5
En el ejemplo anterior, hemos usado el comando CUT para eliminar los últimos 6 caracteres de la cadena "Hello Linux" y la salida es "Hola".
Método 2: Uso del comando SED
SED es un poderoso editor de transmisión que se puede utilizar para realizar varias transformaciones de texto en un archivo o un flujo de entrada. Para eliminar los últimos n caracteres de una cadena usando SED, podemos usar la siguiente sintaxis del comando:
echo "cadena" | Sed 's/.\ n \ $ // '
Aquí, N es el número de caracteres que queremos eliminar del final de la cadena, y a continuación hay un ejemplo que usa el comando SED:
#!/bin/bash
String = "Hola Linux"
echo "$ String" | Sed 's/.\ 6 \ $ // '
En el ejemplo anterior, hemos utilizado el comando SED para eliminar los últimos 6 caracteres de la cadena "Hello Linux" y la salida es "Hola".
Método 3: Uso de la expansión de los parámetros
La expansión de los parámetros es una característica en BASH que nos permite manipular el valor de una variable. Para eliminar los últimos n caracteres de una cadena utilizando la expansión de los parámetros, podemos usar la siguiente sintaxis:
$ String ::-N
Aquí, la variable de cadena contiene la cadena real de la que queremos eliminar los últimos n caracteres, y n es la cantidad de caracteres que queremos eliminar.
#!/bin/bash
String = "Hola Linux"
echo $ string ::-6
En el ejemplo anterior, hemos utilizado la expansión de parámetros para eliminar los últimos 4 caracteres de la cadena "Hello Linux" y la salida es "Hola".
Conclusión
Para eliminar los últimos n caracteres de una cadena en Bash, el comando CUT, el comando SED y la expansión de los parámetros son las tres formas. Estos métodos son fáciles de usar y pueden ser útiles en varias tareas de scripts bash. Mediante el uso de estos métodos, podemos manipular fácilmente las cadenas y realizar transformaciones de texto en Bash.