windows - sirve - ¿Qué significa/p en set/p?
set p variable prompt string (2)
El interruptor /P
permite establecer el valor de una variable en una línea de entrada ingresada por el usuario. Muestra el promptString especificado antes de leer la línea de entrada. El promptString puede estar vacío.
Dos formas en que lo he usado ... primero:
SET /P variable=
Cuando el archivo de lote llega a este punto (cuando se deja en blanco) se detendrá y esperará la entrada del usuario. La entrada entonces se vuelve variable.
Y segundo:
SET /P variable=<%temp%/filename.txt
Establecerá la variable a los contenidos (la primera línea) del archivo txt. Este método no funcionará a menos que se incluya el /P
Ambos probados en Windows 8.1 Pro, pero es el mismo en 7 y 10.
¿Qué quiere decir /p
en set /p=
? Sé que /
habilita un cambio, y estoy bastante seguro de que sé /a
es para arithmetic
. He escuchado numerosos rumores, algunos diciendo /p
es para prompt
, otros diciendo que es sinónimo de print
. La única razón por la que dudo que sea prompt
es porque en muchos casos no solicita un aviso, pero se imprime en la pantalla, como
<nul set /p=This will not generate a new line
Pero lo que quiero saber es: ¿Realmente sabemos lo que significa?
Los puntos de bonificación para cualquiera que sepa lo que significan todos los conmutadores para ping
, como -n
, -w
, -a
, -s
, y lo que significa el conmutador /L
en el sentido significa. (L = numero ?)
Aún más puntos de bonificación para cualquier persona que pueda nombrar cualquier otro interruptor aparentemente estúpido en un archivo por lotes
Comprenda que ya sé lo que significan todos estos cambios y prefijos, y no estoy preguntando por su significado ni propósito. Gracias por adelantado.
Para futuras referencias, puede obtener ayuda para cualquier comando usando el /?
interruptor, que debería explicar qué interruptores hacen qué.
Según el set /?
En la pantalla, el formato de set /p
es SET /P variable=[promptString]
lo que indicaría que la p in /p
es "prompt". Simplemente se imprime en su ejemplo porque <nul
pasa en un carácter nulo que finaliza inmediatamente el indicador, por lo que actúa como si se estuviera imprimiendo. Todavía es técnicamente una solicitud de entrada, simplemente la está recibiendo de inmediato.
/L
en for /L
genera una lista de números.
Desde ping /?
:
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name
Options:
-t Ping the specified host until stopped.
To see statistics and continue - type Control-Break;
To stop - type Control-C.
-a Resolve addresses to hostnames.
-n count Number of echo requests to send.
-l size Send buffer size.
-f Set Don''t Fragment flag in packet (IPv4-only).
-i TTL Time To Live.
-v TOS Type Of Service (IPv4-only. This setting has been deprecated
and has no effect on the type of service field in the IP Header).
-r count Record route for count hops (IPv4-only).
-s count Timestamp for count hops (IPv4-only).
-j host-list Loose source route along host-list (IPv4-only).
-k host-list Strict source route along host-list (IPv4-only).
-w timeout Timeout in milliseconds to wait for each reply.
-R Use routing header to test reverse route also (IPv6-only).
-S srcaddr Source address to use.
-4 Force using IPv4.
-6 Force using IPv6.