2 votos

El signo del dólar en la mente del comando shell

Soy un novato en la programación de shells. ¿Cuál es la diferencia entre estos dos comandos? ¿Para qué sirve el signo de dólar?

mdfind $'kMDItemFSName="*iValet\'s*"c'

mdfind 'kMDItemFSName="*iValet\'s*"c'

3voto

0942v8653 Puntos 3617

Un signo de dólar antes de una cadena de una sola cita es sólo otro tipo de cadena, pero permite caracteres de escape tipo C, como \n y \' .

Se usó en el comando que mencionó porque contiene un escape para la única cita - las cadenas de una sola cita normal no permiten cualquier escapes en absoluto, incluyendo escapes de la ' . Los retrocesos se interpretan literalmente. Así que al usar $'…' evitó escapar de las comillas dobles, y permitió que la cuerda tuviera un ' en ella.

Hay algo más de información sobre este tipo de cita de la cadena aquí en la Wiki de los Bash Hackers .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X