En la línea de comando a menudo uso comandos "simples" como
mv foo/bar baz/bar
pero no sé cómo llamar a todas las partes de esto:
┌1┐ ┌──2───┐
git checkout master
│ └──────3──────┘
└───────4─────────┘
(Creo que sé) que 1 es un comando y 2 es un argumento, y probablemente llamaría a 3 una lista de argumentos (¿es correcto?).
Sin embargo, no sé cómo llamar 4 .
¿Cómo se etiquetan los "comandos" más complejos?
find transcripts/?.? -name '*.txt' | parallel -- sh -c 'echo $1 $2' {} {/}
Agradecería una respuesta que desglosa qué llamar 1,2,3,4 y cómo llamar a cada parte de, por ejemplo, este "comando" anterior.
Sería genial aprender también sobre otras cosas que son únicas / sorprendentes que no he incluido aquí.
command-line
command
parameter
terminology
theonlygusti
fuente
fuente

manpáginasgityfind, en particular, la sección de sinopsis?gitofindterminología bastante general para Linux.A | B,A | Bes una tubería ,AyBson comandos (lo lamentable es que esto tiene el mismo nombre que sólo el primer mundo en un comando). Podría llamar al primer argumento ejecutable, pero no puedo encontrar una fuente que esté de acuerdo conmigo.git checkout ...,checkoutes un subcomando , y en el contexto desh -c ...,-ces una opción .Respuestas:
Los nombres comunes para cada parte son los siguientes:
Nombre del comando (primera palabra o token de la línea de comando que no es una redirección o asignación de variable y después de que se hayan expandido los alias).
Token, palabra o argumento del comando. De man bash:
Generalmente: argumentos
La concatenación de dos comandos simples con a
|es una secuencia de tubería o tubería:Tenga en cuenta que también hay redirecciones y asignaciones variables:
Donde (al lado de los números de arriba):
Esta no es una lista exhaustiva de todos los elementos que podría tener una línea de comando. Dicha lista es demasiado compleja para esta breve respuesta.
fuente
!para negar su estado). pipe preferiría referirse al mecanismo de IPC utilizado por la mayoría de los shells para implementar tuberías (las tuberías no tienen que usar tuberías, ksh93 usa pares de enchufes en algunos sistemas, por ejemplo). Algunos shells tienen más palabras clave comotime,noglobque se pueden usar en su lugar o además de!aquí.cat $file, aquí diría que$filees un token, pero el valor del archivo es el argumento.argvLa respuesta de @ isaac anterior parece buena.
Quiero extender esto con algunas fuentes.
Supongo que el estándar POSIX en algún sentido podría considerarse canónico . Otras fuentes pueden ser
man bashyman proc.POSIX sugiere que:
man procusa la línea de comando )También tiene terminología para muchos comandos más complicados.
Creo que el comando es bastante ambiguo, por lo que quizás el término nombre del comando y la línea de comando sean buenos para mayor claridad.
fuente
proces un sistema de archivos de propósito especial (colección de archivos) que proporciona información sobre el estado interno del núcleo. Creo que significa procesos (ver también sysfs que proporciona información sobre otras cosas además de los procesos). La razón por la que es relevante está escrita por desarrolladores de kernel , por lo que bien puede reflejar el lenguaje que usan, que podría ser un poco más formal.