Script por lotes: strings

Un script Bash es un archivo de texto sin formato. Este archivo contiene diferentes comandos para la ejecución paso a paso. Estos comandos se pueden escribir directamente en la línea de comandos, pero desde el punto de vista de la reutilización, es útil almacenar todos los comandos interrelacionados para una tarea específica en un solo archivo. Podemos usar ese archivo para ejecutar el conjunto de comandos una o más veces según nuestros requisitos. Aquí, en este artículo, vamos a discutir el uso de strings dentro de Bash Scripting. En la programación informática, una string es tradicionalmente una secuencia de caracteres, ya sea como una constante literal o como algún tipo de variable.

El ejemplo más simple del uso de secuencias de comandos en Bash se puede dar como:

name="Satyajit Ghosh"
echo $name

Producción:

Satyajit Ghosh

El ejemplo anterior muestra un nombre de variable de tipo string que imprime algo cuando se le llama. Entonces, la sintaxis básica para usar Strings dentro de un Bash Script será:

Sintaxis básica:

VariableName='value'
echo $VariableName

Ahora, hay múltiples formas presentes en Bash Scripting mediante las cuales podemos manipular strings. Discutámoslos.

Longitud de la cuerda

Si queremos obtener o imprimir la longitud de una string, podemos usar la siguiente sintaxis para el mismo:

Sintaxis básica:

variableName=value
echo ${#variablename}

A continuación se muestra un ejemplo de lo mismo:

Ejemplo:

name="Satyajit Ghosh"
echo The size of the String : ${#name}

Producción:

The size of the String : 14

Aquí el tamaño de la string se muestra en la salida. A continuación se muestra la representación del shell del terminal después de ejecutar el script:

 

Extracción de substrings

Podemos extraer una substring o parte de una String. Podemos proporcionar solo las posiciones iniciales, tanto las posiciones iniciales como las finales, o podemos usar la indexación por la derecha. La sintaxis básica para el mismo será:

Sintaxis básica:

${string:startindex:endindex} #posición inicial y final

${string: right-ended-index} #utilizando la indexación por la derecha

${string:startindex} #solo posición inicial

A continuación se muestra un ejemplo de lo mismo:

Ejemplo:

nombre = «Satyajit Ghosh»

# usando la posición inicial y final

echo El primer nombre es: ${nombre:0:8}

# usando la indexación por la derecha

echo El apellido es: ${name: -5} #agregado-espacio requerido

# usando solo la posición inicial

echo El apellido es: ${nombre:8}

Producción:

The First Name is : Satyajit
The Last Name is : Ghosh
The Last Name is : Ghosh

A continuación se muestra la representación del shell del terminal después de ejecutar el script:

 

Eliminación de substring

Elimina la coincidencia más corta o más larga de una substring del principio de una string. La sintaxis básica para el mismo será:

Sintaxis básica:

# Deletes shortest match of 
# $substring from front of $string.
${string#substring} 

# Deletes longest match of 
# $substring from front of $string.
${string##substring} 

A continuación se muestra un ejemplo de lo mismo:

Ejemplo:

name="GeeksforGeeks"
echo "Name is : ${name#G*k}"
echo "Name is : ${name##G*k}"

Producción:

Name is : sforGeeks
Name is : s

En el ejemplo anterior, la coincidencia más corta entre G y k es ‘Geek’ y la coincidencia más larga es ‘ GeeksforGeek ‘, por lo que se elimina la parte coincidente y tenemos el resto de las letras presentes en la salida. A continuación se muestra la representación del shell del terminal después de ejecutar el script:

 

Reemplazo de substring

Reemplazo de substring significa reemplazar la primera coincidencia o todas las coincidencias de la substring con la string de reemplazo. La sintaxis básica para el mismo será:

Sintaxis básica:

${string/substring/reemplazo} #Reemplazar la primera coincidencia de $substring con $reemplazo. 

${string//substring/reemplazo} #Reemplaza todas las coincidencias de $substring con $reemplazo.

A continuación se muestra un ejemplo de lo mismo:

Ejemplo:

name="HeeksforHeeks"
echo "Name is : ${name/Heek/Geek}"
echo "Name is : ${name//Heek/Geek}"

Producción:

Name is : GeeksforHeeks
Name is : GeeksforGeeks

En el ejemplo anterior, el primero solo reemplaza la primera ocurrencia de Heek con Geek pero la siguiente declaración cambia todas las ocurrencias de Heek con Geek. A continuación se muestra la representación del shell del terminal después de ejecutar el script:

 

Concatenación de strings

En bash scripting, podemos concatenar dos o más strings juntas. La sintaxis básica para el mismo será:

Sintaxis básica:

string=${string1}${string2}${string3}
or
string=$string1$string2$string3
or
string="$string1""$string2""$string3"

A continuación se muestra un ejemplo de lo mismo:

Ejemplo:

s1="Satyajit"
s2=" "
s3="Ghosh"

#String concatenation
name=$s1$s2$s3

echo $name

Producción:

Satyajit Ghosh

En el ejemplo anterior, hemos concatenado el nombre, el apellido y un espacio en el medio. Luego lo mostró. A continuación se muestra la representación del shell del terminal después de ejecutar el script:

 

Publicación traducida automáticamente

Artículo escrito por satyajit1910 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *