Citas de escape de bash

Citas de escape de bash
Citar se utiliza para deshabilitar el significado especial de los caracteres especiales. Hay muchos metacharacteres de conchas que tienen significados específicos. Pero cuando necesite representar a esos personajes, requerirá eliminar el significado especial de esos personajes y se hace citando al personaje. Puedes hacer esta tarea usando tres formas. Estos son personajes de escape, comillas simples y doble comillas que se explican con ejemplos en este tutorial.

Personajes de escape:

El personaje de escape de bash se define por inactividad no cotizada (\). Conserva el valor literal del personaje seguido de este símbolo. Normalmente, el símbolo $ se usa en Bash para representar cualquier variable definida. Pero si usas escapar en frente de ps Símbolo, entonces se ignorará el significado de $ e imprimirá el nombre de la variable en lugar del valor. Ejecute los siguientes comandos para mostrar los efectos del personaje de escape (\).

Ejemplo 1:

El significado de 'pwd'El comando es para mostrar la ruta de directorio de trabajo actual. En el siguiente ejemplo, el valor del 'pwd'El comando se almacena en una variable. Cuando \ El símbolo se usa frente al símbolo $, entonces el nombre de la variable se imprimirá en lugar del valor.

$ PD = 'PWD'
$ Echo $ Pd
$ echo \ $ PD

Producción:

Comillas simples:

Cuando adjunta caracteres o variables con una sola cita ('), representa el valor literal de los caracteres. Entonces, el valor de cualquier variable no se puede leer con una sola cita y una sola cita no se puede usar dentro de otras cotizaciones individuales. Algunos ejemplos de cotización única se muestran a continuación.

Ejemplo#2:

En este ejemplo, se almacena un valor de cadena en la variable $ var. 'eco'El comando imprime el valor de esta variable sin ninguna cotización. Cuando la variable se cita mediante una sola cotización, el nombre de la variable se imprimirá como salida. Si se usa la barra inalcadora (\) antes de la cotización única, el valor de la variable se imprimirá con una sola cotización.

$ var = 'lenguaje de secuencias de comandos bash'
$ echo $ var
$ echo '$ var'
$ echo \ '$ var \'

Producción:

Ejemplo#3:

A veces se requiere imprimir una sola cita dentro de una cadena. Una sola cadena citada no puede contener otra cita individual dentro de la cadena. Puede hacer esta tarea agregando barra de invernada en la parte delantera de una sola cita. En el siguiente ejemplo, cita única de no Se imprime la palabra usando barra insegura.

$ var = $ 'no me gusta este libro'
$ echo $ var

Producción:

Ejemplo#4:

BackTicks no es compatible con citas individuales. En este ejemplo, el valor del calendario se almacena en una variable, $ var. El valor de esta variable se imprimirá correctamente por eco comando si no usa ninguna cotización. Pero cuando la variable se cita mediante una sola cita en el comando echo.

$ var = 'Cal'
$ echo $ var
$ echo '$ var'

Producción:

Doble comillas

Cotizaciones dobles (") es otra forma de preservar el valor literal de los personajes. El signo de dólar ($) y los caracteres de retroceso (') pueden mantener su significado especial dentro de las cotizaciones dobles. Back -stain (\) también puede conservar su valor cuando se usa siguiendo backticks, cotización doble y barra de retroceso. A continuación se muestran algunos ejemplos de citas dobles.

Ejemplo#5:

Una limitación de la cita única es que no puede analizar el valor de la variable dentro de la cita. En este ejemplo, se asigna un valor de cadena a una variable nombrada, $ var e imprima el valor de esa variable utilizando la cotización doble en el comando echo.

$ var = 'lenguaje de secuencias de comandos del lado del servidor'
$ Echo "PHP es un $ VAR"

Producción:

Ejemplo#6:

Cualquier salida de comando se puede imprimir utilizando una cotización doble. En el siguiente ejemplo, fecha El comando está adjunto con doble cita e impresa mediante el uso de una cita doble.

$ Echo "Hoy es 'Fecha'"

Producción:

Ejemplo#7:

No puede usar una cotización doble dentro de otra cotización doble para asignar cualquier valor de cadena. Si desea imprimir una cotización doble en la salida, debe usar la barra invernal (\) con la cadena. De manera similar, puede imprimir backticks (') y caracteres de injuria (\) en la salida utilizando la barra de retraso (\) dentro de la cita doble. En este ejemplo, el primer comando imprimirá "500" con la cita doble, el segundo comando imprimirá 'Fecha' con Backticks y el tercer comando imprimirá "\ Php \" con Back -savlash.

$ echo ""El precio es \"" 500 \ """"
$ echo ""\ 'date \' el comando se usa para el valor de la fecha""
$ echo ""\\ php \\ es un lenguaje de programación""

Producción:

Ejemplo#8:

Las cuerdas de doble cotización y cita única funcionan lo mismo cuando se usan juntas sin ningún espacio en un comando de impresión. Pero si usa algún espacio entre los valores de cadena, se tratarán como un valor separado e imprimirán por separado. En este ejemplo, se utilizan tres cadenas de doble cotización en el primer comando printf. Estas cadenas se combinarán e imprimirán como una sola cadena cuando ejecute el comando. Se usan dos cadenas de cita única y una doble cotización en el segundo comando de impresión y funcionará como el primer comando de impresión. Se utilizan tres cadenas de doble cotización con espacio en el tercer comando de impresión y cada valor de cadena funcionará como una cadena separada e imprima cada cadena en una nueva línea.

$ printf '%s \ n' ""Ubuntu"" ""LinuxMint"" ""Fedora""
$ printf '%s \ n' 'Ubuntu' ""LinuxMint"" 'Fedora'
$ printf '%s \ n' ""Ubuntu"" ""LinuxMint"" ""Fedora""

Producción:

Ejemplo#9:

Crear un archivo bash llamado escapar.mierda, y agregue el siguiente código. En este ejemplo, se usan datos de texto con cotizaciones dobles y signo de dólar. Se muestra anteriormente que la cita doble y el símbolo de dólar no pueden imprimir dentro de una cadena encerrada por cita doble. Entonces, la barra inalcadora se agrega frente a las citas dobles y al símbolo de dólar para imprimirlos. Aquí, se usa un bucle for para iterar la variable de cadena, $ Cadena e imprima cada palabra del texto que se almacena en esa variable.

#!/bin/bash
#Inicializar la variable con carácter especial
String = ""El precio de este \"" libro \ ""es \ $ 50""
#Anterate e imprima cada palabra de la variable de cadena
para palabra en $ string
hacer
Echo $ Word
hecho

Ejecutar el guión.

$ Bash Escape.mierda

Producción:

Conclusión

Espero que este tutorial lo ayude a usar personajes de escape, cita única y doble cita basada en los requisitos de su guión.

"