He visto muchos tutoriales que usan --
comandos posteriores. Algo como esto:
command --
¿Qué significa esto --
?
command-line
Jibril
fuente
fuente
Respuestas:
El
--
se utiliza para indicar el final de las opciones de línea de comando. Esto le permite usar argumentos que comienzan con--
. Por ejemplo, si crea un archivo llamado--foo
:Y luego intente eliminarlo,
rm
pensará que le está dando un argumento:Una forma de evitar esto es usar
--
:Esta es una práctica común y recomendada por POSIX , por lo que es compatible con muchos programas.
fuente
rm
programa y de muchas utilidades compatibles con POSIX. Ver directriz 10 . Para comprobar que Bash no está haciendo el trabajo (y eso no tendría sentido), simplemente cree un pequeño script con justprintf '> %s <\n' "$@"
y ejecútelo con--
.--
, pero, por supuesto, eso es simplemente porque el módulo Perl relevante (getopts
) también lo admite. Tienes toda la razón, solo busqué rápidamenteman bash
, vi la sección que había citado pero no me di cuenta de que estaba en la sección "opciones de línea de comando". Gracias por la corrección, respuesta editada.La mayoría de los comandos usarán un - para indicarle al comando que otros parámetros deben tratarse de manera diferente. Un ejemplo es el rm - --filename mencionado anteriormente. Otro ejemplo, un script como 'startx' se interpretará todo antes y pasará todo al servidor X.
fuente